gpt4 book ai didi

javascript - 从文本中剥离标记(以数组形式提供)未通过 Codewars 中的测试

转载 作者:行者123 更新时间:2023-12-03 03:30:53 29 4
gpt4 key购买 nike

我正在尝试解决 Strip Comments Codewars 的挑战。问题的描述是 -

Complete the solution so that it strips all text that follows any of a set of comment markers passed in. Any whitespace at the end of the line should also be stripped out.

输入和预期输出的屏幕截图 -

enter image description here

我解决这个问题的方法是 -

  1. 将输入字符串拆分为数组。创建一个新数组来保存结果。
  2. 对于第一个数组(输入)中的每个字符,如果该字符不是标记,则将其插入结果数组中。
  3. 如果该字符是标记,则忽略所有后续字符,直到遇到换行符 \n。此时,继续插入结果数组。
  4. 重复直到输入数组末尾。
  5. 加入结果数组, trim 字符串并返回。

我的代码 -

function solution(input, markers) {
let markerFound = false;
let stripped = [];
let letters = input.split('');
for (let i = 0; i < letters.length; i++) {
if (markers.includes(letters[i])) {
markerFound = true;
}

if (markerFound && letters[i] === "\n") {
markerFound = false;
}

if (!markerFound) {
stripped.push(letters[i]);
}

}
return stripped.join("").trim();
}

console.log(solution("apples, pears # and bananas\ngrapes\nbananas !apples", ["#", "!"]));

我不确定为什么测试失败。预期的和返回的输出对我来说看起来是一样的 -

enter image description here

最佳答案

很简单:梨后面有一个空格。

Any whitespace at the end of the line should also be stripped out.

我猜你在推送到剥离数组时需要再次 trim

stripped.push(letters[i].trim());

关于javascript - 从文本中剥离标记(以数组形式提供)未通过 Codewars 中的测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46105670/

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