让我说清楚。我必须验证2个电话号码。他们是我的要求。不是特定于任何国家。它可以留空。意思是,它不是强制性的。但它不应该是
我正在使用模式^ [ - +()0-9] {1,20} $。案例1与此正则表达式失败。我该如何解决?
答案 0 :(得分:0)
您可以使用PHONE_NUM.replaceAll("[^0-9]","")
消除所有非数字。
然后,如果您的结果.length()
超过20,则数字太多。如果它为0(表示空),则不会给您一个电话号码。
如果你能正确处理空白,它会减少用户的挫败感。