如何在Visual Studio 2017中用正则表达式查找含dim不含as的行?
如何在Visual Studio 2017中查找不含
As的Dim语句 我来帮你搞定这个问题——要找出VB代码里那些没有显式声明类型的Dim语句,用Visual Studio 2017的正则表达式查找完全可以实现,具体步骤和正则写法如下:
核心正则表达式
直接在查找框里输入这个正则:
^(?=.*\bDim\b)(?!.*\bAs\b).*$
正则表达式拆解
^:匹配一行的起始位置(?=.*\bDim\b):正向预查,确保当前行包含完整的Dim单词(\b是单词边界,避免误匹配像Dimension这类包含Dim子串的词)(?!.*\bAs\b):负向预查,确保当前行完全不包含完整的As单词.*:匹配行内剩余的任意字符$:匹配一行的结束位置
Visual Studio 2017操作步骤
- 打开「在文件中查找」工具(快捷键:
Ctrl+Shift+F) - 勾选「使用正则表达式」选项(查找框右侧的
.*图标) - 在「文件类型」里设置为你的VB项目文件(比如输入
*.vb) - 将上面的正则表达式粘贴到「查找内容」框中
- 点击「查找全部」,就能看到所有符合条件的未显式声明类型的
Dim语句了
额外注意事项
- 如果你的代码里
Dim或As有大小写混用的情况(比如小写dim),记得取消勾选「匹配大小写」选项,确保所有变体都能被匹配到 - 若遇到行内注释包含
As的特殊场景(比如Dim x ' 原本应该写As Integer),这个正则会把这类行排除在外。如果需要忽略注释中的As,可以使用更复杂的正则,但上面的写法已经能覆盖绝大多数常规场景,足够支撑你完成2万行VB转C#的工作
内容的提问来源于stack exchange,提问作者Doug Null
相关产品推荐
相关产品推荐

