String = ""
String = " "
String = "0"
我需要正则表达式来匹配所有三种情况。
我将前两个作为/^$|\s+/
如何包含零检查?
答案 0 :(得分:6)
这将匹配空字符串,单个零或所有空格:
/^(\s+|0)?$/
说明:
/
分隔符^
字符串的开头(
开始一个小组:
\s+
一个或多个空格|
或0
零)
结束小组?
匹配前一组零或一次$
字符串结尾/
分隔符答案 1 :(得分:2)
您可以尝试以下方式:
/^[0\ ]*$/
或者:
/^(\ |0)*$/
如果我们不想匹配" 00000 [...]"或" 0 0 0 0 [...]" :
/^(\ *|0)$/
答案 2 :(得分:2)
您的模式将匹配包含任何空格的任何字符串(例如,由于中间的空格,它会认为"foo bar"
匹配)。它听起来并不像你想要的那样。
要匹配任何仅包含空格,单个0
或空字符串的字符串,请使用以下命令:
/^\s*$|^0$/
或者这个:
/^(\s*|0)$/