js获取字符串中指定字符串出现的次数的方法
夏蝉 前端设计 59阅读
在前端的处理逻辑中,有时候需要利用js来计算一个字段串中指定字段出现的次数,那么该如何做呢?
js 利用 split() 方法来计算字符串中指定字段串出现的次数
split() 方法,可以通过指定的字符或字符串将字符串转换成数组,再通过数组的长度来计算指定字符串的个数。
示例1:
查找指字的字符在字符串中出现的次数!
var str = 'abcdbcdbefbef'
var arr = str.split('d'); //通过 d 字符来将字符串转换成数组
console.log(arr.length - 1);示例2:
查找指字的字符串在字符串中出现的次数!
var str = 'ABCDEABCEDABCEDEFABCEE'
console.log(str.split('AB').length - 1);
// 4js 通过 replace 方法或正则来查找指定字符在字符串中出现的次数!
示例1:
var str = 'ABCDEABCEDABCEDEFABCEE'
var count = 0;
while (str.indexOf('AB') != -1) {
str = str.replace('AB', "")
count++;
}
console.log(count);注意:通过此方法处理后的字符串与原有的字符串不相同!
示例2:
上面的方法,为了不改变处理后字符串内容可以使用自定义函数的方式来实现!
var str = 'ABCDEABCEDABCEDEFABCEE'
//自定义函数
function getStrCount(scrstr, armstr) { //scrstr 源字符串 armstr 特殊字符
var count = 0;
while (scrstr.indexOf(armstr) != -1) {
scrstr = scrstr.replace(armstr, "")
count++;
}
return count;
}
console.log(getStrCount(str,'AB'));
console.log(str);示例3:
通过js正规的方法来实现查找字符串个数的方法!
var str = 'ABCDEABCEDEFABDECSABEDA';
//自定义函数
function getStrCount(aStr, aChar) {
var regex = new RegExp(aChar, 'g'); // 使用g表示整个字符串都要匹配 飞鸟慕鱼博客
var result = aStr.match(regex);
var count = !result ? 0 : result.length;
return count;
}
console.log(getStrCount(str,'AB'));
