我的正则表达式的一部分是 : /<a .*?(" "|"")(href)
。在 中(" "|"")
,我想说匹配空格或没有空格,但我无法从中得到任何东西。我也试过("\s"|"")
没有结果。
问问题
116186 次
2 回答
128
“空格或无空格”与“零个或一个空格”或“零个或多个空格”相同,我不确定您到底想要什么。
在下面的讨论中,我将使用<space>
一个空格来表示,因为在短代码片段中很难看到一个空格。在实际的正则表达式中,您必须使用实际的空格字符。
零或一空格表示为一个空格,后跟一个问号 ( <space>?
)。这将完全匹配零个或一个空格。如果要匹配零个或任意数量的空格,请将 替换为?
(*
例如<space>*
:)
如果“空格”实际上是指“任何空格字符”(例如,制表符),则可以使用\s
大多数正则表达式引擎将其翻译为空格。因此,任何空白字符的零个或一个将是\s?
,而零个或多个将是\s*
于 2013-09-09T15:42:46.307 回答
17
space
or问题的其他替代no-space
方案(注意某些开头的空格):
[ ]{0,1}
{0,1}
[ ]?
?
于 2017-02-16T15:18:13.253 回答