如何用Visual Studio查找替换批量将TextBox转为Button
解决Visual Studio中带保留内容的批量替换问题
嘿,我刚好碰到过一模一样的需求,VS的查找替换用正则表达式就能完美搞定这个问题——普通通配符确实没法保留匹配的内容,具体操作步骤给你列出来:
- 按下
Ctrl+Shift+H打开全局查找替换窗口,或者通过菜单栏编辑 > 查找和替换 > 快速替换打开 - 找到窗口里的使用正则表达式按钮(图标是
.*,在"选项"按钮旁边),点击它开启正则模式 - 在查找内容框里输入:
这里的<TextBox(.*)IDTextBox"(.*)是一个捕获组,会把<TextBox和IDTextBox"之间的任意内容(也就是你说的*)完整保存下来 - 在替换为框里输入:
这里的<Button$1IDButton"$1代表刚才捕获组里保存的内容,这样就能把原来的自定义部分完整保留,只替换前后的关键词 - 可以先点击查找下一个确认匹配的内容是否正确,没问题的话点击全部替换就完成了
拿你给的例子测试:
原代码:
<TextBox x:Name="Name1IDTextBox" Grid.Column="1"
替换后:<Button x:Name="Name1IDButton" Grid.Column="1"
如果你的目标内容存在跨行情况,可以把查找内容里的.*换成[\s\S]*,这样就能匹配包含换行的任意内容了,不过针对你描述的场景,上面的正则完全够用。
内容的提问来源于stack exchange,提问作者Joe
相关产品推荐
相关产品推荐

