如果前一个字母与当前字母相同,我想计算一个相同的字母
我有输入字符串"lorrem ipsssum dollorrrrum"和我要计数相同的字母,如果在当前的字母是一样的前面的字母和更改所有的下一个相同的字母就以计数的那封信,
我希望确切的结果如下所示:
"lor2emips3umdol2or4um"
我被卡住了,我不知道我应该使用什么算法,以及在谷歌中搜索这个问题的关键字:(
到目前为止我写的代码
"lor2emips3umdol2or4um"
回答
使用正则表达式,您可以捕获一个字符,然后反向引用该字符 1 次或多次。使用替换函数将匹配的部分替换为完整匹配中的字符和字符数:
function countLetter(str) {
return str
.replace(/s/g, '')
.replace(/(w)1+/g, (match, char) => char + match.length);
}
console.log(countLetter('lorrem ipsssum dollorrrrum'));