gpt4 book ai didi

javascript - 在 Javascript 中通过匹配替换

转载 作者:行者123 更新时间:2023-11-30 09:13:58 25 4
gpt4 key购买 nike

我需要匹配数字后跟一个单位,并使用 Javascript 将它们替换为数字+下划线+单位。

我提出了这段代码,它没有产生我想要达到的结果。

var x = myFunction("I have 3 billion dollars");

function myFunction(text) {
return text.replace(/(\d+\.?(?:\d{1,2})?) (\bmillion\b|\bbillion\b|\bbillion\b|\bmillions\b|\bbillions\b|\btrillion\b|\btrillions\b|\bmeter\b|\bmeters\b|\bmile\b|\bmiles\b|\%)/gi, function (match) {
return "<span class='highlighted'>" + match[1] + "_" + match[2] + "</span>";
});
}

上面的代码应该返回“我有 3_billion 美元”(但就替换而言它返回 _b)。由于我是 Java 新手,如有任何建议,我们将不胜感激。

编辑已经有很多有用的提示!这里有一些更多的输入示例:

the street is 4.5 miles long
the budget was 430.000 dollars

最佳答案

简单更清晰的例子给你

let regex = /\d+ (million|billion|millions|billions|trillion|trillions|meter|meters|mile|miles)/g

let match = "I have 3 billion dollars".match(regex)
let replace = match.map(x => x.split(" ").join("_"))

console.log(replace)

关于javascript - 在 Javascript 中通过匹配替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56508915/

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