验证字符串是否有效的最简单方法是什么 URN ?
编辑 使用 URI 不是正确的解决方案! URI 可以包含各种 URN 不能包含的内容,比如 &
最佳答案
如果你只需要验证它,你可以使用正则表达式。以下将仅匹配符合 RFC2141 的 URN:
import java.util.regex.Pattern;
public class UrnTest {
public static final Pattern URN_PATTERN = Pattern.compile(
"^urn:[a-z0-9][a-z0-9-]{0,31}:([a-z0-9()+,\\-.:=@;$_!*']|%[0-9a-f]{2})++$",
Pattern.CASE_INSENSITIVE);
public static void main(String[] args) throws Exception {
for(String urn : args) {
boolean isUrn = URN_PATTERN.matcher(urn).matches();
System.out.println(urn+" : "+(isUrn ? "valid" : "not valid"));
}
}
}
关于java - 如何验证 URN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5492885/