正则表达式实例上的方法
1. regExp.test(str)
返回布尔值
2. regExp.exec(str)
返回捕获组
字符串用到的正则
1. str.match(regExp)
正则带
g,返回数组或者null; 不带g,返回捕获组;注:当不带
g的时候,结果同 正则函数的exec()方法。
如下:带g,返回数组:
案例应用:将字符串按照+和-分隔符拆分成数组
var str = '1+2+3-444';
var arr = str.match(/(\d+(?:\.\d+)?|[-+\/*()]|\d+)/g)
// arr的值是 ['1', '+', '2', '+', '3', '-', '444']
var result = 0;
var flag = '+';
arr.forEach(item => {
if( Number(item)){
if(flag === '+'){
result = result + Number(item);
} else {
result = result - Number(item);
}
} else {
flag = item;
}
})
如下:不带g,返回捕获组,捕获组的第一项是匹配中的第一个字符:
2. str.replace(str|regExp, target)
把某个字符串替换成另一个字符串。
3. str.search(str|regExp)
查找某个字符串。返回匹配中的起始索引。