debt-collector
Version:
a nodejs tool to identify, track and mesure technical debt
15 lines (14 loc) • 478 B
JavaScript
import escapeStringRegexp from 'escape-string-regexp-node';
export const countAll = (data) => (str) => {
let regexp;
if (str instanceof RegExp) {
const flags = str.flags.includes('g') ? str.flags : str.flags + 'g';
regexp = new RegExp(str.source, flags);
}
else {
regexp = new RegExp(escapeStringRegexp(str), 'g');
}
const res = data.matchAll(regexp);
const resArr = Array.from(res, (m) => m[0]);
return resArr.length;
};