范围类
在使用正则表达式时,很多时候,我们会想要匹配a~z的所有字母,很多人想到,可以使用字符类[abcdefg...z]
,但是,这种方法需要输入所有需要匹配的字母。那么,有没有简单点的方法呢?
所幸,正则表达式提供了范围类,范围类可以让我们使用[a-z]
来连接两个字符表示从a到z的任意字符。
基本用法
let text = 'a1b2d3x4z5'
let reg = /[a-z]/g
text.replace(reg, 'Q') // Q1Q2Q3Q4Q5
tips:值得注意的是,范围类是闭区间,即:[a-z]
包含a和z
范围类的连写
使用范围类有一个小技巧:在[]
组成的类内部是可以连写的,比如:[a-zA-Z]
let text = 'a1B2d3X4Z5'
let reg = /[a-zA-Z]/g
text.replace(reg, 'Q') // Q1Q2Q3Q4Q5