match()
- 用于字符串
- match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
- 该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位
运用
题目:查询字符串中出现次数大于 1 次的字符
- 土方法:
function demo(text) {
let textArr = [...text.toLowerCase()], setArr = [...new Set([...text.toLowerCase()])]; //字符串 text 转 textArr 数组,setArr 是去重数组
setArr.forEach(item => { textArr[textArr.indexOf(item)] = null }); //把原数组和去重数组的交集设为 null
return new Set(textArr).size - 1; //再取集合,多了 null 元素,长度减一就是原数组的重复元素个数
}
console.log(demo("NikolaySolodukhin"));
- match()
function demo(text) {
return text.toLowerCase().split(‘‘).sort().join(‘‘).match(/([^])\1+/g); //为了查询连续出现次数,故要排序
}
console.log(demo("NikolaySolodukhin")); //[ ‘ii‘, ‘kk‘, ‘ll‘, ‘nn‘, ‘ooo‘ ]