正则表达式又称规则表达式,它常被用于匹配某些规则、模式的文本。简单的说它就是用来匹配文本的。
例:him,history,high,hi 在这个字符串中匹配出hi
正则里面就hi就可以匹配里面所有单词里面含有hi的单词,但是如果要精确到hi这个字符串就要用到正则表达式的一个特殊代码了,它就做元字符,那么我们就先用一个元字符来精确匹配hi这个单词吧,这需要一个正则表达式:\bhi\b
用\b来匹配到它,\b单词的开头或结尾,也就是单词的分界处,它只匹配一个位置,下面就让我们来了解一些那些元字符吧。
. 匹配除换行符以外的任意字符,英文状态下的一个点,也就是句号,它可以匹配出来换行符以外的所有字符,图中的LF就是换行符,而且空格也匹配到了,而黄色和蓝色向间的就是匹配到的字符,这颜色并没有其他什么特殊的意思就是黄蓝相间的一个格式而已
\w 这是匹配数字或字母或下划线或汉字,除了这些其他的就没匹配到了,它是一个小写的w
\s 匹配任意的空白符,空白符也包括换行符,它是一个小写的s。
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始,它就是匹配到你要匹配的第一个字符串,看图里面第二个sgr它就没有匹配到,它匹配到的只是第一个的字符串,往后的相同的字符串它就没有匹配到了
$ 匹配字符串的结束,既然讲了上面那个,这个就不用多讲了,这是同理的,匹配到的是最后一个字符串。
还有就是它们这些元字符的大写代表的是反义,相反的意思,有时候只是上面的元字符还是不够的,所以就出现了反义。
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符
例如
\D+匹配任意非数字的字符
<a[^>]+>匹配用尖括号括起来的以a开头的字符串。
这就是正则表达式的元字符所代表的意义,它在很多地方都用的到,例如匹配图片之类的。所以学习它很重要哦。