gpt4 book ai didi

javascript - 使用正则表达式设置带有减号的货币格式

转载 作者:行者123 更新时间:2023-11-28 19:38:22 33 4
gpt4 key购买 nike

我有一个简单的函数,可以将字符串格式化为货币 - 它每 3 个字符添加空格:

function addSpace(n) {
var rx = /(\d+)(\d{3})/;
return String(n).replace(/^\d+/, function (w) {
while (rx.test(w)) {
w = w.replace(rx, '$1 $2');
}
return w;
});
}

所以当我像这样使用它时:

addSpace("1234567.89")

我得到:

"1 234 567.89"

但对于负数我无法得到相同的行为。

我想获取 -1 234 567.89addSpace("-1234567.89")

我应该如何更改我的函数才能获得该结果?我尝试在 rx 开头添加 -? 但这没有帮助。

我知道我可以在字符串中搜索 -,如果找到,请将其添加到开头,但我想避免这种情况。

最佳答案

只需将您的正则表达式修改为:

/^-?\d+/

输出:

"-1 234 567.89"

Demo

关于javascript - 使用正则表达式设置带有减号的货币格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25524653/

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