在正则表达式中获取非法字符范围:java
我有一个验证名称的简单正则表达式模式。但是当我运行它时,我得到了非法的字符范围错误。我认为通过转义“ \ s”将允许一个空格,但编译器仍在抱怨。
public boolean verifyName(String name) { String namePattern = "^[\\p{L}]++(?:[',-\\s][\\p{L}]++)*+\\.?$";
return name.matches(namePattern);
}
这是我认为不应该发生的错误,因为名称可能包含这些内容的保姆 [',-\\s]
所以我在哪里不了解?
回答:
您不能有范围“从,
到空白”。也许您打算逃避-
?
\s
不是空格,而是空格[ \t\r\n\v\f]
(空格,制表符,回车符,换行符,垂直制表符或换页)。
会起作用的事情:
"[ ',-]""[',\\- ]"
以上是 在正则表达式中获取非法字符范围:java 的全部内容, 来源链接: utcz.com/qa/413492.html