首先,什么事正则表达式呢,其实引入概念很多时候并不能帮我们明白它到底是什么,所以我先简单描述下,正则表达式,其实就是一个记录字符串规则则的字符串,等我们看完这一部分,也就能明白它到底是什么了。
基本语法:正则表达式就是“/expression/”+表示搜索范围的符号。例如我们要找function这个关键词,就是/function/gi,其中g表示global,就是全局搜索,i表示ignor,就是忽略大小写。
在js中,我们通过RegExp类来实现。
这个类里面有很多很多的符号用来表示不同的索引方法,我先把这个表列一列:
元字符 | 说明 | 量词 | 说明 | 反义字符 | 说明 |
. | 匹配除了换行符号(\n)以外的任意字符 | * | 出现次数:[0,+∞) | \W | 字母,数字,下划线,汉字以外的字符 |
^ | 匹配字符串的开始 | + | 出现次数:[1,+∞) | \S | 空白字符以外的字符 |
$ | 匹配字符串的结束 | ? | 出现次数:[0,1] | \D | 数字以外的字符 |
\b | 匹配单词边界 | {n} | 出现次数:n | \B | 匹配非单词的边界 |
\d | 匹配数字 | {n,} | 出现次数:[n,+∞) | [^] | 在字符类中,^号后面的字符串以外的任意字符 |
\s | 匹配任意的空白符 | {n,m} | 出现次数:[n,m] | [-] | 匹配从-前字符到-后字符的字符串中的字符/数字 |
\w | 匹配字母,数字,下划线或汉字 |