Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式允许空白和完全空白_Java_Regex - Fatal编程技术网

Java 正则表达式允许空白和完全空白

Java 正则表达式允许空白和完全空白,java,regex,Java,Regex,让我说清楚。我必须验证2个电话号码。这是我的要求。不特定于任何国家。它可以留空。也就是说,它不是强制性的。但不应该如此 充满了空白--我应该抛出错误 之间不应包含空格,如12 123 我正在使用模式^[-+()0-9]{1,20}$。案例1使用此正则表达式失败。如何修复它?您可以使用PHONE_NUM.replaceAll(“[^0-9]”,“)删除所有非数字 然后,如果结果的.length()大于20,则表示数字过多。如果为0(表示为空),则未向您提供电话号码 如果您能正确处理空白,它将减少用

让我说清楚。我必须验证2个电话号码。这是我的要求。不特定于任何国家。它可以留空。也就是说,它不是强制性的。但不应该如此

  • 充满了空白--我应该抛出错误
  • 之间不应包含空格,如12 123

  • 我正在使用模式^[-+()0-9]{1,20}$。案例1使用此正则表达式失败。如何修复它?

    您可以使用
    PHONE_NUM.replaceAll(“[^0-9]”,“)
    删除所有非数字

    然后,如果结果的
    .length()
    大于20,则表示数字过多。如果为0(表示为空),则未向您提供电话号码


    如果您能正确处理空白,它将减少用户的挫折感。

    您可以使用.trim()方法一些有效匹配的示例将非常好。正则表达式允许集合中至少一个字符,最多20个字符
    -
    +
    0
    ,…,
    9
    。你到底在哪里看到任何空白字符的余量?大家好。,。我是说。。当它完全充满了空间。。它的失败。。就像12 123被困在模式中。。。但是如果输入都是空白。。它无法验证如果可以留空,则需要将
    {1,20}
    更改为
    {0,20}