gpt4 book ai didi

javascript - 如何排除 "pig latin"函数中的标点符号?

转载 作者:行者123 更新时间:2023-11-29 20:52:47 27 4
gpt4 key购买 nike

如果这个问题在某个地方得到了回答,我深表歉意 - 如果是这样,请指出正确的方向。看了一堆解决方案,还没破解!

Sooo...基本上,我需要:将每个单词的第一个字母移到它的末尾,然后在单词的末尾添加“ay”。保持标点符号不变。

到目前为止,这是我的代码:

function pigIt(str) {
var newStr = str.split(" ");

var changed = newStr.map(function(input) {
return input.substring(1) + input.charAt(0) + "ay";
});

changed = changed.join(" ");
return changed;
}

console.log(pigIt('Pig latin is cool'));

如您所见,该代码适用于任何不包含标点符号的输入。伟大的。现在我可能需要在某处添加一个正则表达式来排除标点符号,但我不知道该放在哪里!请帮忙!!

最佳答案

您可以在捕获分隔符时按单词边界 /(\W+)/ 进行拆分。只转换文字。然后重新加入。

function pigIt(str) {
var newStr = str.split(/(\W+)/); // ['Pig', ' ', 'latin', ',- ',..]

var changed = newStr.map(function(input) {
if (!/\w/.test(input)) return input // keep non word elements as is

return input.substring(1) + input.charAt(0) + "ay";
});

return changed.join("");
}

console.log(pigIt('Pig latin,- is cool!'));

关于javascript - 如何排除 "pig latin"函数中的标点符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50951585/

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