末尾附练习网站链接
#限定符
?代表前面的这个字符需要出现0次或者1次,简单来说就是?前面的字符可有可无
* 会匹配0个或者多个字符,就是*前面的字符可以出现0次或者多次
+ 会匹配+前面字符出现一次或以上的字符
{2,6} 匹配指定前面字符出现次数为2-6之间的字符串
{2,} 同理出现两次以上的字符
(ab)+ 上面是指定一个字符的限定符,匹配多个可以使用括号括起来再加入限定符起到多个字符查找的作用
#或运算符
A (cat|dog) 匹配A cat或者A dog这两个单词需要加上括号,不然就是匹配A cat或者dog
#字符类
[abc] 方括号里的内容代表要求匹配的字符只能取自与它们,匹配a或者b或者c
[a-zA-Z] 方括号可以指定范围
[^0-9] 方括号可以加^排除字符,这里是除了0-9之外的所有字符(包括换行符)
#元符字
(正则表达式预定好的字符类型,如数字符、空白符、单词开头结尾等)
\d 数字字符,等同于[0-9],代表所有数字字符
\w 单词字符(英文、数字及下划线)
\s 空白符(包括Tab和换行符)
\D 非数字字符
\W 非单词字符
\S 非空白字符
\b 表示单词字符边界
. 代表任意字符,不包含换行符
^ 会匹配行首的字符,如^a只会匹配行首的a
$ 会匹配行尾的字符,如a$只会匹配行尾的a
#贪婪与懒惰匹配
<span><b>dasdwdwdwdwq</b></span>
<.+> 可以匹配<>范围内的所有字符<span><b>dasdwdwdwdwq</b></span> ,默认贪婪匹配任意字符
<.+?> 只匹配<>内的字符<span><b></b></span> (转懒惰匹配),懒惰匹配“任意字符”
正则表达式练习网站链接:www.codejiaonang.com