之前我们说过元字符的意义,而这一次的我们来说说元字符的转义和限定符。那么什么是转义呢?这个是跟那个元字符的反义是一样的吗?其实不是的,它和反义是不同的,它是有其他意思的。
例如上面的图片里显示的,这些字符串里面就有好几个元字符,如果你想匹配到这些元字符本身要怎么办呢?这时候你就需要转义,一个\就代表着转义
例如:\s,用一个\转义就可以匹配到\s它本身,如果你要匹配那个反斜杠本身你也要给它转义‘\’。比如你要查找\s或者\w就出现了问题:你没法指定它们,因为它们会被解释成其它的意思。这时你就必须使用\来取消这些字符的特殊意义。因此,你应该使用\s和\w。这就是我们要说的转义。
说完转义我们来说一说限定符,限定符它是用来重复匹配的。把你需要匹配的数重复匹配
看到上面的图就比如我们匹配上面的数字,用\d就把全部匹配到了,可是有时候我们不需要匹配到所有的数字,我只想匹配到一位数两位数三位数或者更多怎么办?
这时候就该用到限定符了,限定它匹配到多少位数,而不是全部都一次匹配完,或者说你想匹配到电话号码就要用到这个限定符,由于你用\d匹配,而\d它是一个数字匹配一次的,下面的限定符就是用来重复匹配。
-
一个星号代表重复零次或更多次,就是大于等于0次;
-
一个加号重复一次或更多次,大于1;
? 重复零次或一次;
{n} 重复n次,重复你想要的次数;
由于我匹配的是4位数,如果有七个数字当中它匹配到的只有4个,剩余的三个它就没有匹配到了
{n,} 重复n次或更多次;
它就匹配到4次以上
{n,m} 重复n到m次。
这个就比如下图的4位数或者6位数之间都可以匹配得到,而其余的1位数或者两位数就没有。