【发布时间】:2019-03-26 11:31:55
【问题描述】:
我正在尝试根据与特定客户要求匹配的上一个和下一个单词来突出显示一个单词。
只有在上一个和下一个单词不以大写字母开头时,才应突出显示一个单词。
我已经创建了正则表达式“(?!\bA-Z\b)\sSouls+(?!\s[A-Z,0-9])”,但它也用前一个以大写开头的单词突出显示了“Souls”。
https://regex101.com/r/wPmijX/2
在这种情况下,“Dark”旁边的“Souls”不应突出显示,因为它以大写字母开头。仅应突出显示第二段中的“灵魂”。第三段中的事件“灵魂”不应突出显示为“游戏”以大写字母开头。
【问题讨论】:
-
您可以使用组然后对结果进行后处理,请参阅
((?:^|\b[a-z]\w*)\s+)(Souls)(?!\s+[A-Z0-9]) -
谢谢,这对我有用。
标签: javascript regex regex-lookarounds