我正在尝试编写一个正则表达式,以检测文本中的多个模式,其中包括多个空格。我正在做这样的事情:
/[abc( {2,})]/
但是它似乎也可以检测到单个空格。我究竟做错了什么?
答案 0 :(得分:3)
[abc( {2,})]
模式是一个字符类(或其他术语中的括号表达式),它与单个字符a
,b
,c
,{{1} },空格,(
,{
,2
,,
或}
。您不能在字符类内定义 char序列。
您可以使用
)
或者,要匹配任意两个或多个空格,请使用
[abc]| {2,}
[abc]|\s{2,}
alternation operator用于在此处分隔两个备选方案:
|
-匹配单个字符[abc]
,a
或b
的字符类(括号表达式)c
-或|
-两个或更多空格。注意:每当您想在更长的模式中使用此替换时,最好用group包裹它,以免破坏整个正则表达式:
{2,}
或者,如果不需要访问用这些模式捕获的值,请使用non-capturing group:
([abc]| {2,})