2020.9.8
应用于对执行字符串的匹配和校验。
创建正则对象
-
直接创建
var reg = /hello/i; // 创建了一个匹配hello,i为忽视大小写,的正则对象
var str = "helloworld";
str.march(reg); // 匹配内容,返回一个数组,其中有索引值
reg.test(str); //检测字符串中是否有要匹配的内容,返回布尔值 -
构造函数法
var reg = new RegExp(匹配的内容,匹配选项);
| 修饰符 | 描述 |
|---|---|
| i | 匹配时忽略大小写 |
| g | 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止) |
| m | 执行多行匹配 |
匹配原则
| 表达式 | 描述 |
|---|---|
| [abc] | 查找方括号之间的任意字符 |
| [^abc] | 查找任意不在花括号之间的内容 |
| [0-9] | 查找从0-9 |
| [a-z] | 查找从a到z |
| [A-Z] | 查找从A到Z |
| [adgk] | 查找给定集合里的任意字符 |
| [^adgk] | 查找给定集合外的任意字符 |
| (red|blue|green) | 查找任何指定选项 |
元字符
| . | 查找单个字符,除了换行和结束符 |
|---|---|
| \w | 匹配字母数字或下划线或汉字,等价于A-Za-z0-9_ |
| \W | 不匹配\w中的 |
| \d | 匹配数字 |
| \D | 不匹配数字 |
| \s | 匹配空白符 |
| \S | 不匹配空白符 |
量词
| 量词 | 描述 |
|---|---|
| n+ | 匹配任意包含至少一个n的字符串 |
| n* | 匹配任意包含菱格或者多个n的字符串 |
| n? | 匹配包含0个或者一个n的字符串 |
| n{x} | 匹配包含x个n的序列的字符串 |
| n{x,y} | 匹配包含x到y个n的序列的字符串 |
| n{x,} | 匹配包含至少x个n的字符串 |
| ^n | 匹配任何开头为n的字符串 |
| n$ | 匹配任何结尾为n的字符串 |
方法
| 方法 | 描述 |
|---|---|
| search | 检索与正则表达式相匹配的值 |
| match | 找到一个或多个正则表达式的匹配值 |
| replace | 替换与正则表达式匹配的字符串 |
| split | 把字符串分割为字符串数组 |

浙公网安备 33010602011771号