gpt4 book ai didi

javascript - 在单个正则表达式中将 X 替换为 Y,将 Y 替换为 X

转载 作者:行者123 更新时间:2023-11-28 12:28:17 24 4
gpt4 key购买 nike

假设我有以下内容:

var strRandomString = "I have 2 apples and 6 oranges and 3 grapes";

现在我想用“橙子”一词替换“苹果”一词,反之亦然。顺序不固定,替换应该是全局的。这使得最终结果:

document.write(strRandomString) \\"I have 2 oranges and 6 apples and 3 grapes";

目前,我能想到的最好方法是:

strRandomString=strRandomString.replace("apples","*******");
strRandomString=strRandomString.replace("oranges","apples");
strRandomString=strRandomString.replace("*******","oranges");

有没有办法通过一次替换来做到这一点?

最佳答案

String.prototype.replace不仅接受字符串作为替换,还接受函数。函数的返回值用作替换字符串。

var strRandomString = "I have 2 apples and 6 oranges and 3 grapes";
strRandomString.replace(/apples|oranges/g, function(m) {
// `m` is a matched string.
return m === 'apples' ? 'oranges' : 'apples';
})
// => "I have 2 oranges and 6 apples and 3 grapes"

关于javascript - 在单个正则表达式中将 X 替换为 Y,将 Y 替换为 X,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25367347/

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