- 正则表达式
Regular Expression,也叫作正则,是一种字符串匹配模式,用于匹配字符串中的内容,绝大多数主流语言都支持正则表达式
1. 正则表达式语法
1.1 元字符
-
元字符是正则表达式中的特殊字符,用于匹配字符串中的内容
-
匹配单个字符
表达式 含义 示例 .任意一个字符(除了换行) a.c匹配abc和axc\d任意一位数字(0-9) \d\d匹配12或45\D非数字 \D\D匹配ab或@#\w单词字符,包括字母数字下划线 \w\w匹配ab、A1或_x\W非单词字符 \W\W匹配!}或@$\s空白字符,如空格、Tab等 a\sb匹配a b中的空格\S非空白字符 \S\S匹配ab或12[]表示匹配字符集合中的某一个字符 [abc]匹配a或b或c[^]表示匹配除字符集合内容外的字符 [^abc]匹配除了a或b或c以外的字符|表示匹配两个中的任意一个字符 a|b匹配a或b -
重复匹配
表达式 含义 示例 *匹配前面字符0次或多次 a*b匹配b、ab或aaab+匹配前面字符1次或多次 a+b匹配ab或aaab(不匹配b)?匹配前面字符0次或1次 a?b匹配b或ab(不匹配aab){n}匹配前面字符n次 a{3}匹配aaa(不匹配aa){n,m}匹配n到m次 a{2,3}匹配aa或aaa(不匹配a)一般情况下,正则会尽可能多得重复匹配,也称为贪婪匹配,如果希望尽可能少得匹配,可以在
*和+后面添加? -
其他
表达式 含义 示例 ^匹配字符串开头 ^a匹配abc开头(不匹配ba开头)$匹配字符串结尾 a$匹配ba结尾(不匹配ab结尾)\b单词边界 \bword\b匹配a word中的word(而不匹配keyword)
大约 8 分钟
