gpt4 book ai didi

javascript - 当我向该字符串末尾添加多个字符时,为什么我一无所获?

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

我正在尝试获取辅音列表。然而,使用这段代码,当我的字符串长度超过 1 时,我什么也得不到。

我尝试过toStringconcat,转换为数组

function solve(s) {
let subStrList = [];
let tm = "";

for(let i = 0; i < s.length; i++){
if(!"aeiou".includes(s[i])){
tm += s[i];
}else{
subStrList.push(tm);
tm = "";
}
}// For End
return subStrList;
}

OUTPUT: [ 'z', 'd', '' ]

最佳答案

您使用 tm 作为累加器来收集辅音序列,然后将收集的辅音添加到结果数组中,并在找到元音后重置累加器。这种算法的一个问题是您必须处理字符串末尾是辅音的情况,现在您已将累加器 (tm) 中的所有内容添加到列表中。例如:

function solve(s) {
let subStrList = [];
let tm = "";

for (let i = 0; i < s.length; i++) {
if (!"aeiou".includes(s[i])) {
tm += s[i];
} else {
subStrList.push(tm);
tm = "";
}
} // For End
if (tm !== "") {
subStrList.push(tm);
}

return subStrList;
}
console.log(solve("zadacs"));

但请注意,一个更简洁的解决方案是一个简单的正则表达式:

function solve(s) {
return s.split(/[aeiou]/g);
}
console.log(solve("zadacs"));

注意:如果需要,您还可以使用 s.split(...).filter(Boolean) 删除空子字符串。

关于javascript - 当我向该字符串末尾添加多个字符时,为什么我一无所获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57380081/

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