正则表达式使用\1的好处

有这样一串字符:2011-09-21-21:33:33:000000

如果使用一般的写法可以这样做:

(\d{1,4}-\d{1,2}-\d{1,2}-\d{1,2}:\d{1,2}:\d{1,2}:\d{1,6})|(\d{1,4}\/\d{1,2}\/\d{1,2}\/\d{1,2}:\d{1,2}:\d{1,2}:\d{1,6})

但是这样写又长又不好维护,下面就是/1出场的时候了,如下:

\d{1,4}(-|\/)\d{1,2}(\1\d{1,2}){2}(:\d{1,2}){2}:\d{1,6}

这个时候就该解释一下\1具体意思了,如下:

 (-|\/)捕获- 或者\

\1是就是前面捕获的这个符号
以保证3次出现的一定是同一个符号
不过有牛人说,像这种字符直接转换可以会更好些,写正则反而麻烦了。有时候不要为了展示自己而费了程序

阅读更多
文章标签: 正则表达式
个人分类: 【 C# 】
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭