我正在寻找一个允许字符串内部不超过 2 个非连续空格的正则表达式。
WORD is ok
WORD WORD is ok
WORD WORD WORD is ok
WORD WORD WORD WORD is not ok
我现在不在乎连续的空格。
我正在寻找一个允许字符串内部不超过 2 个非连续空格的正则表达式。
WORD is ok
WORD WORD is ok
WORD WORD WORD is ok
WORD WORD WORD WORD is not ok
我现在不在乎连续的空格。
如果字符串包含两个以上的非连续空格,您可以使用负前瞻来防止匹配
^(?!\S*\s+\S+\s+\S+\s)
或者,一个有效的字符串将匹配
^\S*\s*\S*\s*\S*$
您可以为此使用反向引用:
/(\b.+\b)\1\1\1/
例如,
/(\b.+\b)\1\1\1/.test('HELLO HELLO HELLO HELLO'); // true
然而,
/(\b.+\b)\1\1\1/.test('HELLO HELLO HELLO'); // false
你有没有尝试过
^([^ ]+\s+){0,2}[^ ]*$
它假定您在行首没有空间。