function countBs(str) {
let result = str.match( /b/gi );
return result
}
let a = "pobeda pobeda vmesto obeda"
console.log( countBs(a) )
Выводит [b,b,b],но как result сделать числом?
Проще говоря нужно что-бы получилось кол-во букв b
return result
return result ? result.length : 0
match() ищет совпадения и возвращает массив... через length можно посчитать колчество элементов этого массива. Но если совпадений не будет и ничего не вернет - будет ошибка, Поэтому рядом добавлен ИЛИ пустой массив || [] — в случае ноль совпадений, посчитает кол-во элементов пустого массива, = 0.
function countBs(str) {
return ( str.match( /b/gi ) || [] ).length;
}
let a = "pobeda pobeda vmesto obeda"
console.log( countBs(a) );
Можно сделать более универсальный сочик:
function count(str, pattern) {
let reg = new RegExp( pattern, "gi" );
return ( str.match( reg ) || [] ).length;
}
let a = "pobeda pobeda vmesto obeda"
console.log( count(a, 'a') );
console.log( count(a, 'po') );
console.log( count(a, 'bubu') );
Продвижение своими сайтами как стратегия роста и независимости