Regex查找不在单词中的字符串

Regex查找不在单词中的字符串,regex,Regex,我有很多文件和很多文本。在这些文件中,我在寻找一个字符串,比如说av,它没有被字母a-zA-Z包围,就像在have中一样。不区分大小写。我的工具支持perl兼容的语法 一些例子: 比赛:av 匹配:av链接 比赛:让我们做点什么 比赛:av/dc 匹配:ab、ac、av、az 没有对手:拥有 无对手:平均水平 不匹配:textav在正则表达式中,^字符不是 ^[a-zA-Z]av^[a-zA-Z]这个表达式应该对您有所帮助:/\bav\b/uim尽量不要用字母环视: (?<![a-zA-Z

我有很多文件和很多文本。在这些文件中,我在寻找一个字符串,比如说av,它没有被字母a-zA-Z包围,就像在have中一样。不区分大小写。我的工具支持perl兼容的语法

一些例子: 比赛:av 匹配:av链接 比赛:让我们做点什么 比赛:av/dc 匹配:ab、ac、av、az 没有对手:拥有 无对手:平均水平
不匹配:textav

在正则表达式中,^字符不是
^[a-zA-Z]av^[a-zA-Z]

这个表达式应该对您有所帮助:/\bav\b/uim

尽量不要用字母环视:

(?<![a-zA-Z])av(?![a-zA-Z])

演示:

阅读关于正则表达式的文档这应该是非常简单的。或者你有什么特别的问题吗?我尝试了以下方法,但只在av上匹配,而在其他类似的东西上不匹配。av[^a-zA-Z]av[^a-zA-Z],这不是真的。顺便说一句,这和[^true]也不一样。是的,太完美了,谢谢!对于所有人:请不要,尽管我的请求中限制了a-zA-Z,但这也与字符串前后的0-9不匹配。这对我有好处,但可能无法满足你的要求。