正则表达式
软件:regexbuddy
基本语法
\d 0-9任意一个数字
\w 任意一个字母数字,下划线
\s 空白符
[] 包含中括号中的任意【一个】字符
[ab5@]:匹配a,b,5,@ 中的任意一个字符
[f-k]:匹配f-k之间的任意一个字符
[^A-F0-3]:匹配A-F0-3之外的任意一个字符
注意:除了^和-之外的其他特殊符号被包含在中括号里面就失去了意义,比如$
[\d.\-+]:匹配数字 小数点 + -
[\s\S]:取并集
注意区分大小写,大写是相反的意思
匹配次数
\d{2}:匹配2次
\d\d{2}:匹配数字3次
(\d\d){2}:匹配数字4次
\d{3,6}:匹配3位到6位的数字
贪婪模式:默认的是贪婪模式,匹配的越多越好
非贪婪模式:匹配的次数越少越好 在次数后面加一个?
\d{2-5}? 匹配2-5之间的任意一个字符,次数越少越好
\d{2,}:最少重复2次
//abc a5e ain dsl a445e
?:0次到1次 a\d?e a和e之间有0或1个数字 a5e
+:最少有一次 a\d+e a和e之间至少有一个数字 a5e a445e
*:0次或多次 a\d*e a和e之间有0个或多个数字 a5e a445e
字符边界:
\b 匹配单词的边界 不全是\w表示
| 或
()分组
([a-z]{2})\1 重复括号里的字符(反向捕获) dede
基本语法
\d 0-9任意一个数字
\w 任意一个字母数字,下划线
\s 空白符
[] 包含中括号中的任意【一个】字符
[ab5@]:匹配a,b,5,@ 中的任意一个字符
[f-k]:匹配f-k之间的任意一个字符
[^A-F0-3]:匹配A-F0-3之外的任意一个字符
注意:除了^和-之外的其他特殊符号被包含在中括号里面就失去了意义,比如$
[\d.\-+]:匹配数字 小数点 + -
[\s\S]:取并集
注意区分大小写,大写是相反的意思
匹配次数
\d{2}:匹配2次
\d\d{2}:匹配数字3次
(\d\d){2}:匹配数字4次
\d{3,6}:匹配3位到6位的数字
贪婪模式:默认的是贪婪模式,匹配的越多越好
非贪婪模式:匹配的次数越少越好 在次数后面加一个?
\d{2-5}? 匹配2-5之间的任意一个字符,次数越少越好
\d{2,}:最少重复2次
//abc a5e ain dsl a445e
?:0次到1次 a\d?e a和e之间有0或1个数字 a5e
+:最少有一次 a\d+e a和e之间至少有一个数字 a5e a445e
*:0次或多次 a\d*e a和e之间有0个或多个数字 a5e a445e
字符边界:
\b 匹配单词的边界 不全是\w表示
| 或
()分组
([a-z]{2})\1 重复括号里的字符(反向捕获) dede
匹配电话号码:(0\d[2,3]-\d[7,9])|1[35789]\d{9}
未完待续