Javascript 使用正则表达式匹配句子中字符串的单个匹配项
如果一句话说 “你好,你好” 测试应该返回false,但是如果 “你好,约翰” 这是真的Javascript 使用正则表达式匹配句子中字符串的单个匹配项,javascript,regex,Javascript,Regex,如果一句话说 “你好,你好” 测试应该返回false,但是如果 “你好,约翰” 这是真的 我想这就是我所要做的一切。/(hello){1}/一个简单的解决方案,它不会使正则表达式复杂化,但会计算给定字符串中的匹配数: function isValid(str) { return (str.match(/hello/gi) || []).length === 1; } 此正则表达式将匹配任何重复的单词: (\b\w+\b).+\1 说明: 从 代码 要检查字符串是否不包含匹配项,请执行以
我想这就是我所要做的一切。
/(hello){1}/
一个简单的解决方案,它不会使正则表达式复杂化,但会计算给定字符串中的匹配数:
function isValid(str) {
return (str.match(/hello/gi) || []).length === 1;
}
此正则表达式将匹配任何重复的单词:
(\b\w+\b).+\1
说明:
从
代码
要检查字符串是否不包含匹配项,请执行以下操作:
!("testing testing 1 2 3...".match(/(\b\w+\b).+\1/)) #=> false
!("testing 1 2 3...".match(/(\b\w+\b).+\1/)) #=> true
为什么不检查一下你找到了多少对?这比尝试编写只允许一次出现的复杂正则表达式要容易得多。默认情况下,正则表达式不区分大小写吗?