Java 正则表达式允许空白和完全空白
让我说清楚。我必须验证2个电话号码。这是我的要求。不特定于任何国家。它可以留空。也就是说,它不是强制性的。但不应该如此Java 正则表达式允许空白和完全空白,java,regex,Java,Regex,让我说清楚。我必须验证2个电话号码。这是我的要求。不特定于任何国家。它可以留空。也就是说,它不是强制性的。但不应该如此 充满了空白--我应该抛出错误 之间不应包含空格,如12 123 我正在使用模式^[-+()0-9]{1,20}$。案例1使用此正则表达式失败。如何修复它?您可以使用PHONE_NUM.replaceAll(“[^0-9]”,“)删除所有非数字 然后,如果结果的.length()大于20,则表示数字过多。如果为0(表示为空),则未向您提供电话号码 如果您能正确处理空白,它将减少用
我正在使用模式^[-+()0-9]{1,20}$。案例1使用此正则表达式失败。如何修复它?您可以使用
PHONE_NUM.replaceAll(“[^0-9]”,“)
删除所有非数字
然后,如果结果的.length()
大于20,则表示数字过多。如果为0(表示为空),则未向您提供电话号码
如果您能正确处理空白,它将减少用户的挫折感。您可以使用.trim()方法一些有效匹配的示例将非常好。正则表达式允许集合中至少一个字符,最多20个字符
-
,+
,(
,)
,0
,…,9
。你到底在哪里看到任何空白字符的余量?大家好。,。我是说。。当它完全充满了空间。。它的失败。。就像12 123被困在模式中。。。但是如果输入都是空白。。它无法验证如果可以留空,则需要将{1,20}
更改为{0,20}
。