[]中代表一个字符的可能取值
1、/./g:任意一个非断行字符;/3\.14/g 可以准确匹配到3.14
2、\w: 匹配阿拉伯数字、英文大小写字母和下划线
3、\W: 匹配被\w排除在外的字符
4、\d: 仅匹配数字
5、\s: 匹配空白符:空格、制表符、断行等
6、\S: \s的补集
7、[abc]:匹配字符a,b,c
8、[b-z]:匹配b,c,d.....z字符
9、yo+:+号前面的字符可以出现一次或多次
10、[Yy][Oo]+[!~\.]*:*前面的可以出现0次或多次
11、[Yy][Oo]+p?[!~\.]*:p出现了0次或一次
12、yo{1,4}: o可以出现1-4次
13、yo{1,4}\b: 还是匹配12,但需要以他结尾时才匹配
14、(.+)飞飞,(.+追追):可以分组$1,$2;
test() 方法是一个正则表达式方法。
test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false
var text = "this has been a short summer";
var pattern = /(..)or(.)/g;
console.log(pattern.test(text))
exec() 方法是一个正则表达式方法。
exec() 方法用于检索字符串中的正则表达式的匹配。
该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。
var text = "this has been a short summer";
var pattern = /(..)or(.)/g;
var matches = pattern.exec(text);
console.log(matches);
console.log(matches[0])
console.log(matches[1])
console.log(matches[2])
打印:
["short", "sh", "t", index: 16, input: "this has been a short summer", groups: undefined]
short
sh
t
var str2 = 'one_two_three';
var pat = /(_)([a-z])/g;
if(pat.test(str2))
var res = str2.replace(pat,RegExp.$2.toUpperCase());
console.log(res);
//oneTwoThree