正则表达式从左到右进行计算,并遵循优先级从高到低的顺序,如下
1.转义符:\
2.圆括号和方括号:(),(?:),(?=),[]
3.限定符:*,+,?,{n},{n,},{n,m}
*前面的字符可以出现0次,1次或多次
+前面的字符可以出现1次或多次
?前面的字符可以出现0次或1次
{n}:o{2} o匹配两次
{n,}:o{2,} o至少匹配两次
{n,m}:o{1,3} o匹配1-3次
4.定位点和序列(即:位置和顺序):^,$,\任何元字符,任何字符
元字符:如\, ^, $, *, +, ?, {n}, {n,}, {n,m}, ., (), |, [], \d, \D, \s, \S, \w, \W等等
\d匹配一个数字字符,等价于[0-9]
\D匹配一个非数字字符,等价于[^0-9]
\s匹配任何空白字符,包括空格、制表符、换页符等等,等价于 [ \f\n\r\t\v]
\w匹配字母、数字、下划线,等价于[A-Za-z0-9_]
5."或"操作:|
例1:
^[0-9]+abc$
^为匹配输入字符串的开始位置
[0-9]+匹配多个数字,[0-9]匹配单个数字,+匹配一个或者多个
abc$匹配字母abc并以abc结尾,$为匹配输入字符串的结束位置
例2:包含字符、数字、下划线或连接字符,长度3-15