1、^和$ 是行定位符 ^匹配一行开头的文本字符 $匹配一行结尾的文本字符。比如:^rlm 和 rlm$ 匹配任意位置可以直接写rlm。
2、\b和\B 是单词的定界符 \brlm\b可以匹配rlm为单词而不是字符串的一部分 \Brlm\B匹配的不能是一个完整的单词必须是字符串的一部分。
3、[]字符类 正则表达式是区分大小写的,如果要区分大小写则要使用[],而且一个[],只能区分一个字符。比如:rlm不区分大小写[Rr][Ll][Mm]。
4、| 也是匹配区分大小写的 比如 (R|r)(L|l)(M|m) 这个匹配符是可以匹配字符串的比如(rLM)|(RlM)|(RLm)|(rlM)...不怕麻烦可以这么写。
5、- 是连接符。作用是连接字符,比如:要匹配A到Z不区分大小写,可以写成[a-zA-Z]。
6、[^]是排除符。匹配不符合的变量。比如:不要匹配A到Z不区分大小写,可以写成[^a-zA-Z]。
7、(?*+{n,m})是限定符,匹配前面的字符;
? | 匹配前面的字符零次或一次 | go?gle,匹配到ggle或gogle |
+ | 匹配前面的字符一次或多次 | go+gle,匹配到gogle或goo...gle |
* | 匹配前面的字符零次或多次 | go*gle,匹配到ggle或goo...gle |
{n} | 匹配前面的字符n次 | go{2}gle,匹配到google |
{n,} | 匹配前面的字符至少n次 | go{2,}gle,匹配到google或gooo...gle |
{n,m} | 匹配前面的字符最少n次和最多m次 | go{0,2}gle,匹配到ggle、gogle、google |
8、.点号字符 可以匹配换行符外的任意一个字符。比如:匹配以r开头m结尾中间包含一个字母的单词 ^r.m$。匹配以r开头n是第三个字母第四个字母是l,以n结尾的单词,
^r.nl*n$
9、\转义符 将特殊字符转换为普通字符。比如:匹配IP地址 ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
10、()括号符是做分组用的(rl|renli)m匹配到结果是rlm和renlim