有这样一串字符: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次出现的一定是同一个符号
以保证3次出现的一定是同一个符号
不过有牛人说,像这种字符直接转换可以会更好些,写正则反而麻烦了。有时候不要为了展示自己而费了程序