我想验证电话号码字段,因为可以为空,如果输入任何,则应该是10位。有谁知道我怎么能写这样的正则表达式? 我正在使用@Pattern注释来验证电话号码 非常感谢
答案 0 :(得分:3)
boolean validate(String number) {
return number == null || Pattern.compile("^\\d{10}$").find());
}
答案 1 :(得分:0)
if (text != null && !text.matches("\\d{10}")) {
// not a valid number
}
但是,既然你只是想要使用@Pattern
注释来验证字段,那么reqex就足够了,因为the javadoc说:
带注释的String必须与以下正则表达式匹配。该 正则表达式遵循Java正则表达式约定 图案。接受字符串。 null元素被视为有效。
(强调我的)
所以,只需使用@Pattern("\\d{10}")
。
答案 2 :(得分:-1)
[0-9]{10}
如果您有任何更具体的规则,请添加它们:)