文本:
id="word1 word2 word3/343/els/425/word4 word5 word6"
wordA wordB Bword2B word1 word2 word3
blah blah blah
我正在尝试匹配整个单词:文本中的word1、word2、word3但我不希望它们在id="word1 word2 word3/343/els/425/word4 word5 word6"
文本行中匹配,这些单词不是拉丁语。
目前的做法:
var sWord = "word2";
text = text.replace( new RegExp(sWord+"(?!\/[0-9])", "gi"), "<span style='background-color: yellow'>"+sWord+"</span>");
这种方法仅适用于 word3,不适用于 word1 或 word2,那么我如何在正则表达式中引入在 NUMBER 之前还有另一个词的可能性?
"(?!.\/[0-9])"
我添加了点“。” 到正则表达式。但它似乎不起作用。
另外,我如何添加全词匹配的可能性?\b和\S似乎不起作用,因为单词不是拉丁语。
先感谢您!
编辑: jsfiddle http://jsfiddle.net/GLt4F/5/
如您所见,word1 和 word2 的按钮中断,但 word3 的按钮中断,因为匹配正确
编辑2:
重新表述问题:仅在 BBB 之后不匹配 AAA 并且它们之间可以是任何东西。例如:
AAA frefe BBB 不应匹配
AAA BBB 不应匹配
AAA frefe cc 应匹配