1.普通的字符
字母:a、b…z,A、B…Z
数字:0、1、2…9
汉字:一、二、三…
下划线:_
2.简单的转义字符
\n:换行符
\t:制表符
\r:回车
匹配“\”后的字符本身
\:匹配“\”
^:匹配“^”
$:匹配“$”
{:匹配“{”
}:匹配“}”
+:匹配“+”
-:匹配“-”
[:匹配“[”
3.标准字符集合
\d:匹配0到9中任意一个数字 \D:匹配除了0~9的任意一个字符
\w:匹配字母,数字,下划线中任意的字符 \W:匹配除了字母,数字,下划线的任意字符
\s:匹配空格,换行符等空白的符号 \S:匹配除了空白字符的字符
.:匹配任意字符,除了换行符
4.自定义字符集合
[ab3]:匹配a或b或3
5.多次匹配字符
{n}:重复n次 匹配数字,重复5次,则匹配到了12345,后面的6789不足5个则不匹配
{m,n}:重复至少m次,最多n次
{m,}:重复至少m次
?:{0,1}
+:{1,}
*:{0,}
6.断言
(?=exp):断言自身出现的位置的后面能匹配表达式
(?<=exp):断言自身出现的位置的前面能匹配表达式
(?!exp):断言自身出现的位置的后面不能匹配表达式
这里匹配数字,并且后面不能为字母a,所以匹配到了12456,3后面是a所以没匹配
(?<!exp):断言自身出现的位置的前面不能匹配表达式