慕课:https://www.imooc.com/learn/706
正则工作室:http://www.regexlab.com/
1.元字符/b
/b用来匹配边界,如 /bhi/b 匹配单独的hi单词。
/B匹配非边界。
2.匹配数字\d
\d{5}表示循环匹配5次数字,\d{3,5}表示循环匹配3到5次。
3.量词? ,* ,+。
?等价于长度{0,1} 如 \d? 匹配长度为0到1的数字
*等价于长度{0,∞} 如 \d* 匹配长度为0到无穷的数字
+等价于长度{1,∞}如 \d+ 匹配长度为1到无穷的数字
4.元字符
^ 开始 如匹配[1995/08/23,12457/08/23]中的正确年月日,使用 ^\d{4}\/\d{2}\/\d{2} 就可以匹配到1995/08/23
. 匹配任何单个字符
\ 转义 将某些字符转义 如 \.(表示点,而不是运算符) \/(表示/)
$ 结束 和^用法差不多
[] 构建简单的类(泛指对象) 字符类:[+\/] 表示匹配+ \ /符号 而[^abc]表示匹配不是abc的项。范围类:[a-z0-9] 匹配a-z以及0-9的项等等
5.转义字符 \Q...\E
使用 \Q 开始,\E 结束,可使中间的标点符号失去特殊意义,将中间的字符作为普通字符。
使用 \U 开始,\E 结束,除了具有 \Q...\E 相同的功能外,还将中间的小写字母转换成大写。在大小写敏感模式下,只能与大写文本匹配。
使用 \L 开始,\E 结束,除了具有 \Q...\E 相同的功能外,还将中间的大写字母转换成小写。在大小写敏感模式下,只能与小写文本匹配。
说明
\Q...\E 适合用于:表达式中需要比较长的普通文本,而其中包含了特殊符号。
举例
表达式
说明
\Q(a+b)*3\E
可匹配文本 "(a+b)*3"。
\(a\+b\)\*3
如果不使用 \Q...\E 进行转义,则对每个特殊符号进行转义。