边学习边整理:
合法字符包含:任意字符(x)、八进制数代表的字符(\0mnn)、十六进制属代表的字符(\xhh)、十六进制值表示的Unicode字符(\uhhhh)、制表符(\t)、换行符(\n)、回车符(\r)、换页符(\f)、报警符(\a)、escape符(\e)、控制符(\cx);
特殊字符:
$匹配结尾、^匹配开始、()将多个表达式组合成一个表达式、[]组成表达式、{}标记前面表达式出现的次数、*出现零次或多次、+出现一次或多次、?出现零次或一次;
预定义字符:
.匹配任意字符、\d匹配0-9的数字、\D非数字;\s空白字符;\S非空白字符;\w单词字符、\W非单词字符;
边界匹配字符:
^行开头;$行结尾;\b单词边界;\B非单词边界;\A输入的开头;\G前一个匹配的结尾;\Z输入的结尾,仅用于最后的结束符;\z输入结束;
两种模式:
贪婪:不带?,匹配到最后一个;
勉强:带?,匹配到第一个;
表达式:
可枚举:[abc];
可表示范围:[a-z];
可表非[^a];
可表与:&&;