fe-interview
fe-interview copied to clipboard
[js] 第7天 统计某一字符或字符串在另一个字符串中出现的次数
第7天 统计某一字符或字符串在另一个字符串中出现的次数
function strCount(str, target) {
let count = 0
if (!target) return count
while(str.match(target)) {
str = str.replace(target, '')
count++
}
return count
}
console.log(strCount('abcdef abcdef a', 'abc'))
function substrCount(str, target) {
let count = 0;
while (str.includes(target)) {
const index = str.indexOf(target);
count++;
str = str.substring(index + target.length);
}
return count;
}
这里找到一个好方法。希望能有用。
function substrCount(str, target) {
if(Object.prototype.toString.call(str).slice(8,-1) === 'String' && !str)
alert("请填写字符串");
else
return (str.match(new RegExp(target, 'g')).length);
}
function getStrTimes(str,rule){ return rule !=='' && str.match(new RegExp(rule,'g'))? str.match(new RegExp(rule,'g')).length : 0; }
var childInNums = parent.split(child).length - 1, 这个没毛病吧
var childInNums = parent.split(child).length - 1, 这个没毛病吧
感觉没毛病
fucntion repeat(str,parentStr){
return parentStr.split(str).length - 1
}
// 递归,一行代码实现 function strRepeatCount (subStr, str, count=0) {
return str.indexOf(subStr) !== -1? strRepeatCount(subStr, str.substring(str.indexOf(subStr)+subStr.length), ++count): count;
}
function count(str, param) {
const reg = new RegExp(param, 'g');
return str.match(reg).length;
}
const countAppears = (str, target) => {
let count = 0;
if (!str || !target) {
return count;
}
const keyIndex = target.indexOf(str);
if (keyIndex > -1) {
count = 1 + countAppears(str, target.slice(keyIndex + 1));
}
return count;
};
const str = "abcaaadefg2333333333334abcddddea";
console.log(countAppears("2", str));
console.log(countAppears("b", str));
console.log(countAppears("d", str));
console.log(countAppears("a", str));
console.log(countAppears("f", str));
var childInNums = parent.split(child).length - 1, 这个没毛病吧
这个好啊 又简单
function strFind (str, target) { var lengths = 0 if (!target) { return lengths } while(str.match(target)) { str = str.replace(target, '') lengths++ } return lengths } var str = "你好 萨达所大所多所多所问问二位无 你好 萨达所大所多 你好" strFind(str, "你好")
var childInNums = parent.split(child).length - 1, 这个没毛病吧
这个真心不错
const countString = (str, chars) => (
(arr = str.match(new RegExp(chars, 'g'))), arr && chars ? arr.length : 0
)
fucntion repeat(str,parentStr){ return parentStr.split(str).length - 1 }
function 关键字写错了
function getCount1(str, target,count = 0 ) { var index = str.indexOf(target); if(index!== -1){ return getCount1(str.substring(index+target.length),target,++count) }else { return count; } }
function getTargetCount(arr, target) {
return arr
.reduce((group, v) => group.set(v, (group.get(v) || 0) + 1), new Map())
.get(target);
}
console.log(getTargetCount([1,1,2,5],1));// 2
// 方法1
var str = 'aabbcaacddaabbccdd'
var str2 = 'aa'
const contSvg = (s1,s2) => {
var arr = [];
arr = s1.split(s2);
console.log(arr.length-1);
}
contSvg(str,str2) // 输出3
// 方法2
// eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
const strCount = (str, target) => {
if (!target) return count
return str.match(eval("/"+target+"/g")).length
}
console.log(strCount('abcd abcde a', 'abc')) // 输出2
var childInNums = parent.split(child).length - 1, 这个没毛病吧
哈哈哈哈和你的想法一样
const letter = "a";
const str = "abcaabccabcaa"
const time = (str, letter) => str.split(letter).length - 1;
console.log(time(str, letter)) // 6
不知道会不会有没有其他特殊情况,这样写的话。。。
function strCount(str, target) {
let count = 0;
while (str.includes(target)) {
str = str.replace(target, "");
count++;
}
return count;
}
function strCount(str, target) {
return str.split(target).length - 1;
}
console.log(strCount("asdgqwidugasgdakisdggfjwdagasd", "gas"));
function count(str, string) {
return Math.max(0, string.split(str).length - 1);
}
‘’aa‘’在“aaabcaaa”中出现几次?如果是两次上述答案没有问题,如果是四次 应该可以用零宽正向断言
function subCount(str,target){
let matchs = str.match(new RegExp(`(?=${target})`, 'g'))
return matchs ? matchs.length : 0
}
fucntion repeat(str,parentStr){ return parentStr.split(str).length - 1 }
function fn(str, substr) {
if(substr === '') return 0;
return str.split(substr).length - 1;
}
const subStrTimes = (str, sub) => {
return Array.from(str.matchAll(sub), m => m[0]).length;
}
function getTimes(str1, str2) { if (str2.indexOf(str1) === -1) { return 0; } const arr = str2.splite(str1); return arr.length - 1; }
var str = 'aabbccabcaabbccabcabc15114816181abc64641414tregfagfczfavacabaaabc6486'; var strArr = str.split('abc')
console.log(strArr.length -1)
function counter(str, subStr, num = 0, index = 0) {
let tempIndex = str.indexOf(subStr, index)
return tempIndex > -1 ? counter(str, subStr, ++num, ++tempIndex) : num
}
var childInNums = parent.split(child).length - 1, 这个没毛病吧
👍
function a(x,y) { x = x.split(${y}
); return x.length - 1 }
a('124awf125awf12awf5','awf')
//'124125125'