早上好大家,
我想要创建一个正则表达式,用于匹配连续出现的三个相同数字。它只应该匹配连续出现的三个数字(以空格分隔),这些数字应该是相同的。如果出现少于或多于三个相同数字,则输出应为false。
我尝试了这个正则表达式
有什么建议吗?
我想要创建一个正则表达式,用于匹配连续出现的三个相同数字。它只应该匹配连续出现的三个数字(以空格分隔),这些数字应该是相同的。如果出现少于或多于三个相同数字,则输出应为false。
我尝试了这个正则表达式
/.*(\d+) \1 \1(?!(\s\1))/
。console.log(/.*(\d+) \1 \1(?!(\s\1))/.test('I am 42 42 4 hey yoo')); //false --> Correct
console.log(/.*(\d+) \1 \1(?!(\s\1))/.test('I am 42 42 42 hey yoo')); //true --> Correct
console.log(/.*(\d+) \1 \1(?!(\s\1))/.test('I am 42 42 42 4 hey yoo')); //true --> Correct
console.log(/.*(\d+) \1 \1(?!(\s\1))/.test('I am 42 42 42 42 hey yoo')); //true --> this output should be false since there are 4 same consecutive digits
有什么建议吗?
foo 42 42 42 bar 42 42 42 42
这个怎么样?应该匹配还是不匹配? - InSync^(?!.*?(?: |^)(\d+)(?: \1){3}(?!\S)).*?(?: |^)(\d+)(?: \2){2}(?!\S)
- bobble bubble"I am^42 42 42 hey yoo"
,而我不匹配(因为我要求第一个"42"
前面有一个空格或者在字符串的开头)。两组假设都不正确;这取决于你想要的方式。 - Cary Swoveland