好久以前就该学的东西一直没学,今天来填坑
^首$尾
+大于等于1个
*大于等于0个
?一个或零个(跟在类似的限制条件后可表示非贪婪匹配)
. 任意一个除\n和\r之外的字符
\w 任意一个字母数字下划线(取大写为取反)
\d 任意一个数字
| 表示或
[] 表示要匹配的东西的字符集(只表示一个字符)([^] ^表示对字符集取反)
如:[\w-] 表示匹配任意一个字母数字下划线或减号
() 规定一个符号(如+ ?*)的作用域,还可以用来定义组(最多定义九个,用\1\2\3…或$1$2$3来引用)((?) 括号里面带问号表示不定义这个组)
如:([^,]*) 表示匹配除去逗号以外的一串字符(可以为空),并将其定义为\1
(?:) 规定一个符号(如+ ?*)的作用域,但不定义组
(?=)(?!) 正向肯|否定预查 (表示匹配时的匹配串对后继字串的条件要求)
(?<=)(?<!) 反向肯|否定预查(表示匹配时的匹配串对前驱字串的条件要求)
{} 表示匹配次数的范围
如:[^a-z]{0,3} 表示匹配0到3个非小写字母的字符