全球查找和Visual Studio中替换
-
11-07-2019 - |
题
我有多个项目的解决方案,我们需要做一些严重的全球性替代品。
有没有办法做一个通配符替换其中后替换一些值留在?
因此,例如,如果希望每个的 HttpContext.Current.Session [“whatevervalue”] 以成为的 HttpContext.Current.Session [“whatevervalue”]。的ToString()强>传递的字符串值将得到尊重?我不想替换“whatevervalue”我只是想追加的ToString(),该模式相匹配。
这是可能在Visual Studio?
解决方案
首先,备份你的项目,以防万一...质量之前更换总是一个好主意。
然后,在查找/替换对话框中,选择使用正则表达式复选框:
在查找中,使用图案:
HttpContext\.Current\.Session\["{.@}"\]
和在替换框中,使用:
HttpContext.Current.Session["\1"].ToString()
其他提示
容易...使用正则表达式和分组。
查找内容: (HttpContext.Current.Session [“whatevervalue”])
替换: \ 0.ToString();
记住检查使用:和选择正则表达式
您想打开“查找选项”扩展器,并选择“使用正则表达式”选项。你这样做之后,你希望这些为您查找/替换条目:
查找
HttpContext\.Current\.Session\[{("([^"]|\")*")}\]
替换:
HttpContext.Current.Session[\1].ToString()
附加注意:
一旦启用了正则表达式的选项,你就可以使用右指三角形按钮,进入Visual Studio的正则表达式语法的片断。
另外请注意,Visual Studio的正则表达式的语法是非常贫民区,因为它并没有因为Visual Studio的6天更换(或更早?) - 所以不要采取任何语法元素是理所当然的。
。例如,人们可能会想到,我发现正则表达式以上故障,导致双引号前的反斜杠是不正确转义,但在现实中,把一个双反斜线出现将打破表达,而不是修复它。
以上答案都不似乎在Visual Studio 2013的工作,因为该版本似乎终于切换到了标准的正则表达式。然而,那些谁非正则表达式的专家或那些谁是用于旧VS查找/替换正则表达式的语法会发现正则表达式快捷按钮是非常有用的。
请看到这个答案的详细信息,包括查找/替换/环绕结合实例:
您可以使用视觉辅助像这样的任务。这是不同类型的重构的一个有力工具。
您还可以考虑使用可免费下载的工具在重构的http:// www.devexpress.com/Products/NET/IDETools/RefactorASP/
它做了一大堆不仅仅是查找和替换,他们称之为用更容易理解的名称重命名成员。它的各种功能将轻松帮助你提高你的代码。