[教程] 在 Visual Studio 使用正则查找含有指定
2023-05-14 本文已影响0人
雨落随风
前言:
举个例子:我想找到 VLC SDK 中用于播放视频的 API, 但是脚本中到处充斥着 play 这个单词,并且方法名中各种 player 和 playing,因为需要把他们都排除,所有就有了以下正则表达式。
实现:
这个正则表达式会匹配任何方法名中包含 "Play" 的方法,并且排除以 "er" 或 "ing" 结尾的方法名。
\w*Play(?!er|ing)\w*(?=\()
请注意查找时需要勾上下图所示两个复选框:
![](https://img.haomeiwen.com/i3600713/2110239aa525aaa3.png)
解释:
- \w*:匹配零个或多个字母数字字符。
- Play:匹配文本中的 "Play"。
- (?!er|ing):这是一个负向零宽断言,表示匹配的内容后面不能是 "er" 或 "ing"。
- \w*:再次匹配零个或多个字母数字字符。
- (?=\():这是一个正向零宽断言,表示匹配的内容后面需要满足一个左括号 "(" 的条件。
PS:举一反三,你可以把这个正则表达式中出现的 Play 改为你想查找的任意字符串进而为你所用。
效果:
![](https://img.haomeiwen.com/i3600713/1060e4611eec05c5.png)
Reference:
虽然不能直接给出正确答案,但是这是一个值得感恩的头脑风暴过程,感谢 AI 的协助, 点击围观我与AI的对话 。