
正则表达式
介绍
“正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。”
使用场景
表单校验、字符检索、抓取网页提取指定内容等,多用于查找和替换,基本上主流的文本编辑器的查找替换都支持正则表达式。
在线可视化工具
创建正则表达式
方式一
字面量创建 var rege=/\d/g;
方式二
使用 js 的内置对象 RegExp
修饰符
i
设置匹配对大小写不敏感g
设置匹配为全局,类似于查找所有,持续到结束m
设置匹配为多行
原义字符
原义(正常)文本字符:代表本身含义的字符,如:a、b、c、1、2、3 等,所有的字符匹配自身。为了匹配元字符,需要借助\来转义,例如+匹配加号。
元字符
基本元字符
字 符 | 说明 |
---|---|
\ | 在非特殊字符之前的反斜杠表示下一个字符是特殊的,不能从字面上解释。例如,没有前\的’b’通常匹配小写’b’,无论它们出现在哪里。如果加了’\‘,这个字符变成了一个特殊意义的字符,反斜杠也可以将其后的特殊字符,转义为字面量。例如,模式 /a/ 代表会匹配 0 个或者多个 a。相反,模式 /a*/ 将 ‘’ 的特殊性移除,从而可以匹配像 “a*” 这样的字符串。 |
| | 逻辑或操作符 |
[] | 定义一个字符集合,匹配字符集合中的一个字符,在字符集合里面像 .,\这些字符都表示其本身 |
[^] | 对上面一个集合取非 |
- | 定义一个范围,例如[A-Z],表示 A 到 Z 的任意字符 |