如何在Visual Studio中批量替换C#字符串Equals调用顺序
Visual Studio正则替换反转Equals调用顺序
操作步骤
- 打开Visual Studio的替换窗口:按下
Ctrl+H,点击窗口右侧的「使用正则表达式」按钮(图标为.*)。 - 在「查找内容」框中输入正则表达式:
这个正则兼容变量名、方法调用、括号前后的任意空格,能匹配以下常见写法:(\w+)\s*\.\s*Equals\s*\(\s*"([^"]+)"\s*\)variable.Equals("abc")variable . Equals( "abc" )myVar123.Equals("test_str")
- 在「替换为」框中输入:
这里"$2".Equals($1)$2对应捕获到的字符串内容,$1对应捕获到的变量名,直接完成顺序反转。
兼容复杂变量的扩展正则
如果你的代码里有带成员访问的变量(比如user.Name、config.Setting),把查找正则改成:
([\w.]+)\s*\.\s*Equals\s*\(\s*"([^"]+)"\s*\)
替换内容保持不变即可。
注意事项
- 先选中部分代码做测试替换,确认结果符合预期后再执行全局替换(点击「全部替换」)。
- 如果字符串包含转义双引号(比如
"a\"bc"),上述基础正则会失效,这类场景可以使用更复杂的正则适配:(\w+)\s*\.\s*Equals\s*\(\s*"((?:\\.|[^"])*)"\s*\) - 替换完成后建议运行项目并检查代码分析警告,确保没有语法错误。
内容的提问来源于stack exchange,提问作者elongez
相关产品推荐
相关产品推荐

