VS2013正则表达式应用示例
VS2013正则表达式语法
在查找替换对话框中查看
VS2013语法可在查找替换对话框中查看,具体过程如下:
- 通过编辑->查找和替换->在文件中替换或者相应快捷键(Ctrl+Shift+H)打开查找替换对话框
- 在查找选项中勾选使用正则表达式,如下图:

- 点击查找内容或替换为文本框右边的(a)+ 按钮即可查看正则表达式帮助,二者分别表示查找语法和替换语法。
查找语法如下图:
替换语法如下图:
点击查找和替换语法的正则表达式帮助都可在MSDN中查看详细语法
在线查看
详见Using Regular Expressions in Visual Studio,值得注意的是VS2013正则表达式语法与.Net的有许多区别。
应用
去除多余的换行符
在NET正则基础之——平衡组最下面的一段有穷自动机代码,每行代码后都有两个空行,这样代码显得十分稀疏,不方便阅读。
替换前:

替换表达式:

替换后:

去除行号
有时候,我们在网上找到的代码中含有行号。如果手工去除的话,太麻烦了。而如果自己写程序的话,则每次用到不同的行号格式的话,就需要去改写相应的程序。这个时候使用正则表达式就很合适了。
比如在[变]C#谜题(1-10)表达式篇中,我发现了一段代码,没有复制按钮(可能跟我是手机开热点连接到电脑有关)。如下图:

复制到VS后,经过分析,我们发现除第一行外的其余行由如下部分组成,开始的行号,中间的空格,最后的代码。(第一行有空格是因为代码缩进)

这个时候就可使用正则表达式,如下图:

为了照顾第一行,我在前面加了\s*,然后点击全部替换就可以完成替换。完成替换后可通过设置下格式(编辑->高级->设置文档的格式或者设置选定内容的格式),这样代码就好看多了。最后的效果如下:

PS:博客园的代码进入复制模式后无法返回查看代码,也可以直接复制到VS后通过这种方式去掉行号。当然,我个人更建议先看下代码思想,然后自己再写一遍。
VS2013正则表达式应用示例的更多相关文章
- Oracle 正则表达式使用示例
正则表达式的基本例子 在使用这个新功能之前,您需要了解一些元字符的含义.句号 (.) 匹配一个正规表达式中的任意字符(除了换行符).例如,正规表达式 a.b 匹配的字符串中首先包含字母 a,接着是其它 ...
- web正则表达式与示例
正则表达式应用——实例应用: 1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字 ...
- winform 表单正则表达式验证 示例(ValidationRule)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 【java】正则表达式简单示例
public class Test { public static void main(String[] args) { String str="135axy"; String r ...
- Java的String.matches不区分大小写正则表达式匹配示例
需求:输入的cmd符合create,listall,delete三种形式,不用区分大小写 写成函数: public static boolean isAllowed3Cmd(String cmd) { ...
- Java正则表达式教程及示例
本文由 ImportNew - ImportNew读者 翻译自 journaldev.欢迎加入翻译小组.转载请见文末要求. [感谢 @CuGBabyBeaR 的热心翻译.如果其他朋友也有不错的原创或 ...
- scala和正则表达式常用基础知识示例
http://www.cnblogs.com/deerchao/archive/2006/08/24/zhengzhe30fengzhongjiaocheng.html . 匹配除换行符以外的 ...
- Python学习手册之正则表达式示例--邮箱地址提取
在上一篇文章中,我们介绍了 Python 的捕获组和特殊匹配字符串,现在我们介绍 Python 的正则表达式使用示例.查看上一篇文章请点击:https://www.cnblogs.com/dustma ...
- Java魔法堂:深入正则表达式API
目录 一.前言 二.正则表达式的使用诉求 三.java.util.regex包 四.java.lang.String实例 五.最短路径实现诉求 六.Java支持的正则表达式功能语法 七.总结 八.参考 ...
随机推荐
- NTP时间同步
1.设置NTP相关服务开机自启: # chkconfig ntpd on # chkconfig ntpdate on # chkconfig |grep ntp 2.启动NTP服务: # servi ...
- sql常见的面试题
1.用一条SQL语句 查询出每门课都大于80分的学生姓名 name kecheng fenshu 张三 语文 81张三 数学 75李四 语文 ...
- Lucene 查询工具 LQT
Lucene Query Tool (lqt) 是一个命令行工具用来执行 Lucene 查询并对结果进行格式化输出. 使用方法: 01 $ ./lqt 02 usage: LuceneQueryToo ...
- 微信公共平台开发-(.net实现)1--成为开发者
刚换了个新环境,哎这都快一个月了,还没适应过来,还是怀念老地方呀.老板让开发一个基于微信平台的开发项目,而且是用net实现.当时就蒙了,微信就用了一会个人赶脚不好,所以果断不用,现在让开发,而且查了一 ...
- HTML5优秀图表控件
不管是哪个领域的开发,都有机会用到图表来做统计分析,以更直观的表现形式来代替传统的文字.在以前,图表控件主要有使用程序代码生成的静态图片,或者是使用flash实现的图表控件. 在HTML5非常流行的当 ...
- mac下android环境搭建笔记(android studio)
本文记录了本人在mac上配置android开发环境的一些过程,为了方便直接选用了官方的IDE– Android Studio .本文包括了android studio的安装.创建第一个hello wo ...
- 让.NET xml序列化支持Nullable
.NET的序列化,关于契约类的生成我们都是通过xsd.exe,对于值类型的可空判断是通过声明同名+Specified的bool属性来判断,比如: public class Person { publi ...
- Async Console Programs 异步控制台程序
如果你正在写一个控制台程序,你可能最终想要一个异步的main方法,像这样: class Program { static async void Main(string[] args) { ... } ...
- Nunit工具做C#的单元测试
Nunit工具做C#的单元测试 学习心得 编写人:罗旭成 时间:2013年9月2日星期一 1.开发人员如何做单元测试 单元测试是针对最小的可测试软件元素(单元)的,它所测试的内容包括单元的内部结构 ...
- 可拖动的DIV
在做WEB UI设计的时候,拖动某个HTML元素已经成为一种不能忽视的用户界面模式,比较典型的应用例子就是Dialog,一个元素是怎么实现拖动的呢?其实原理非常简单,要想实现首先得了解几个基本知识. ...