初识正则表达式
概念
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
表达式合集
正则表达式由特殊的字符组成
[ ] :中括号中可以写多个任意字符,代表只匹配一个字符
例如: [abc] :代表可以匹配a,b,c三个字符中的任意一个字符
js中定义一个正则表达式
/../ 以/开头,以/结尾 中间的内容为正则表达式
例如: let regex = /[abc]/
new RegExp 对象
例如: let regex = new RegExp("[abc]")
上述的代码可以将一个字符串转成正则表达式
正则表达式中的两个方法
test() : 返回一个boolean值,代表是否匹配
exec() : 返回一个数组,数组中存放的是正则匹配的元素
贪婪式表达式
X*: 匹配0到多个,等价于X{0,}
X+: 至少匹配一个,等价于X{1,}
X?: 最多匹配一个,等价于X{0,1}
非贪婪式表达式
X*?:匹配0到多个
X+?:至少匹配一个
X??:最多匹配一个
限定符
^: 如果出现在正则的第一个位置,则代表以什么开头
$: 如果出现在正则的尾部,代表以什么结尾
选择符
|: 代表 "或"
分组
(...): 小括号,组从左到右进行查询
引用
\num: 引用第 num 组的匹配的内容 num 从1开始
命名捕获组
(?p<key>\d) 将 \d+ 匹配的内容赋值给 key,可以通过 exec().groups 来进行获取
?: 非捕获匹配
断言
正向确定断言 ?=
正向否定断言 ?!
反向确定断言 ?<=
反向否定断言 ?<!
更多推荐
ES6正则表达式
发布评论