Jos*_*hua 5 regex actionscript-3 regex-negation
我可以在正则表达式中使用“Alternation”来匹配任何出现的“cat”或“dog”:
(cat|dog)
Run Code Online (Sandbox Code Playgroud)
是否可以否定这种交替,并匹配任何不是“猫”或“狗”的东西?
如果是这样,怎么办?
例如:
假设我正在尝试以近似的方式匹配英语中的 END OF SENTENCE。
以机智:
(\.)(\s+[A-Z][^.]|\s*?$)
Run Code Online (Sandbox Code Playgroud)
与以下段落:
敏捷的棕色狐狸跳过了懒狗。曾几何时,桑切斯博士、帕森斯先生和梅森州长去了商店。你好世界。
我错误地在 Dr.、Mr. 和 Gov. 中找到了“句子结尾”。
(我正在使用http://regexpal.com/进行测试,以防您想看看我在上面的示例中看到的内容)
既然这是不正确的,我想说的是:
!(Dr\.|Mr\.|Gov\.)(\.)(\s+[A-Z][^.]|\s*?$)
Run Code Online (Sandbox Code Playgroud)
当然,这是行不通的,这就是我寻求帮助的原因。
我也尝试过 !/(Dr.|Mr.|Gov.)/, 和 !~ 但没有任何帮助。
如何避免匹配“Dr.”、“Mr.” 和“政府”等?
提前致谢。
这不可能。您通常会使用否定lookbehind 来执行此操作(?<!\xe2\x80\xa6)
,但JavaScript 的正则表达式风格不支持此操作。相反,您必须在事后过滤匹配项以丢弃您不想要的匹配项。
归档时间: |
|
查看次数: |
3047 次 |
最近记录: |