VS2013正则表达式应用示例
VS2013正则表达式语法
在查找替换对话框中查看
VS2013语法可在查找替换对话框中查看,具体过程如下:
- 通过编辑->查找和替换->在文件中替换或者相应快捷键(Ctrl+Shift+H)打开查找替换对话框
- 在查找选项中勾选使用正则表达式,如下图:
- 点击查找内容或替换为文本框右边的(a)+ 按钮即可查看正则表达式帮助,二者分别表示查找语法和替换语法。
查找语法如下图:
替换语法如下图:
点击查找和替换语法的正则表达式帮助都可在MSDN中查看详细语法
在线查看
详见Using Regular Expressions in Visual Studio,值得注意的是VS2013正则表达式语法与.Net的有许多区别。
应用
去除多余的换行符
在NET正则基础之——平衡组最下面的一段有穷自动机代码,每行代码后都有两个空行,这样代码显得十分稀疏,不方便阅读。
替换前:
替换表达式:
替换后:
去除行号
有时候,我们在网上找到的代码中含有行号。如果手工去除的话,太麻烦了。而如果自己写程序的话,则每次用到不同的行号格式的话,就需要去改写相应的程序。这个时候使用正则表达式就很合适了。
比如在[变]C#谜题(1-10)表达式篇中,我发现了一段代码,没有复制按钮(可能跟我是手机开热点连接到电脑有关)。如下图:
复制到VS后,经过分析,我们发现除第一行外的其余行由如下部分组成,开始的行号,中间的空格,最后的代码。(第一行有空格是因为代码缩进)
这个时候就可使用正则表达式,如下图:
为了照顾第一行,我在前面加了\s*,然后点击全部替换就可以完成替换。完成替换后可通过设置下格式(编辑->高级->设置文档的格式或者设置选定内容的格式),这样代码就好看多了。最后的效果如下:
PS:博客园的代码进入复制模式后无法返回查看代码,也可以直接复制到VS后通过这种方式去掉行号。当然,我个人更建议先看下代码思想,然后自己再写一遍。