gpt4 book ai didi

javascript - 如果前一个字母与当前字母相同,我想计算同一个字母

转载 作者:行者123 更新时间:2023-12-03 23:33:32 24 4
gpt4 key购买 nike

我有输入字符串 "lorrem ipsssum dollorrrrum" 并且我想计算相同的字母 if current 字母与上一个字母并将所有下一个相同的字母更改为计数的那个字母,

我希望确切的结果如下所示:

"lor2emips3umdol2or4um"

我被卡住了,我不知道我应该使用什么算法,以及在谷歌中搜索这个问题的关键字:(

到目前为止我写的代码

function countLetter(str) {
return str
.replace(/\s/g, '')
.split('')
.reduce((a, b) => {
return a === b ? b.replace(b, '') : b;
});
}

window.onload = function () {
console.log(countLetter('lorrem ipsssum dollorrrrum'));
}

最佳答案

使用正则表达式,您可以捕获一个字符,然后反向引用同一个字符 1 次或多次。使用替换函数将匹配的部分替换为完整匹配中的字符和字符数:

function countLetter(str) {
return str
.replace(/\s/g, '')
.replace(/(\w)\1+/g, (match, char) => char + match.length);
}

console.log(countLetter('lorrem ipsssum dollorrrrum'));

关于javascript - 如果前一个字母与当前字母相同,我想计算同一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65892494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com