范围类
[a-z] 包含a-z本身所有小写字母
[a-zA-Z] 连写,包含大小写所有字母
[0-9] 数字
[0-9-] 数字加横线
预定义类
字符 | 等价类 | 含义 |
---|---|---|
. | 1 | 除了回车符和换行符之外所有字符 |
d | [0-9] | 数字 |
D | 2 | 非数字 |
s | [tnx0Bfr] | 空白 |
S | 3 | 非空白 |
w | [a-zA-Z_0-9] | 单词字符(字母、数字下划线) |
W | 4 | 单词字符(非单词字符) |
ab\d. //匹配一个 ab+数字+任意字符 的字符串
边界
字符 | 含义 |
---|---|
^ | 以xxx开始 |
$ | 以xxx结束 |
b | 单词边界 |
B | 非单词边界 |
'This is a dog'.replace(/is/g, '0'); //不用边界,全部匹配
输出: "Th0 0 a dog"
'This is a dog'.replace(/\bis\b/g, '0'); //使用边界,匹配单词
输出:"This 0 a dog"
'This is a dog'.replace(/\Bis\b/g, '0'); //前面没有边界,后面有边界
输出:"Th0 is a dog"
'@123@456@'.replace(/^@./g, 'X'); //以@开头
输出:"X23@456@"
'@123@456@'.replace(/.@/g, 'X');
输出:"@12X45X"
'@123@456@'.replace(/.@$/g, 'X');
输出:"@123@45X"
mulSrt ="
@123
@345
@2jk";
mulSrt.replace(/^@\d/gm, 'X'); //m多行