如何search一行中单词之间多于一个空格的出现次数
如何search一行中单词之间多于一个空格的出现次数
1. this is a line containing 2 spaces 2. this is a line containing 3 spaces 3. this is a line containing multiple spaces first second three four
以上所有对这个正则expression式都是有效的匹配。 我应该使用什么样的正则expression式?
[ ]{2,}
空间(2或更多)
你也可以在那些空格单词前后检查。 (而不是其他空格,如制表符或新行)
\w[ ]{2,}\w
相同的,但你也可以select(捕获)只有replace任务的空间
\w([ ]{2,})\w
或者在空格之前和之后看到任何东西,不仅是单词字符(除了空格)
[^\s]([ ]{2,})[^\s]
简单的scheme:
/\s{2,}/
这匹配所有出现的一个或多个空格字符。 如果您需要匹配整行,但仅当它包含两个或更多个连续的空白字符时:
/^.*\s{2,}.*$/
如果空格不需要连续:
/^(.*\s.*){2,}$/
search[ ]{2,}
。 这将在行内的任何地方find两个或更多的相邻空间。 它也将匹配前后空格以及完全由空格组成的行。 如果你不想要,请查看Alexander的答案。
其实,你可以省略括号,它们只是为了清楚(否则空间字符是重复是不是很好的可见:))。
\s{2,}
在于,它也会匹配Windows文件上的换行符(换行符用CRLF
或\r\n
,与\s{2}
匹配\s{2}
。
如果您还想查找多个选项卡和空格,请使用[ \t]{2,}
。