gpt4 book ai didi

javascript - 只需要从字符串中获取数字值

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

我有一个从 Jquery 选择器 .html 获取的字符串,它是
示例

<span class="currency">$</span>"&nbsp;477,000.00"

我只想获取 477000.00 值,以便我可以使用它作为一些计算的数字。

我尝试了 parseInt,它返回 Nan。

这是我的选择代码:

这是我的实际代码:

function getSystemPrice() {
var currentSystemPrice = $("#bom-div-content table tbody tr td").html();
currentSystemPrice = parseInt(currentSystemPrice);
$("#SYSTEM_PRICE_TILES_ONLY").val(currentSystemPrice);
}

最佳答案

尝试:

var string = '<span class="currency">$</span>"&nbsp;477,000.00"';
var output = parseFloat(string.match(/([\d,.]+\.)/)[1].replace(/,/g, ''));
document.getElementById('output').innerHTML = output;
<div id="output"></div>

更新:

var string = '<span class="currency">$</span>"&nbsp;477,000.00"';
var string2 = '<span class="currency">$</span>"&nbsp;12.477.000,00"';
var re = /((?:\d{1,3}[,.]?)+)[,.](\d{2})/;
var m = string.match(re);
var output = document.getElementById('output');
output.innerHTML += parseFloat(m[1].replace(/[,.]/g, '') + '.' + m[2]) + '\n';
m = string2.match(re);
output.innerHTML += parseFloat(m[1].replace(/[,.]/g, '') + '.' + m[2]);
<pre id="output"></pre>

正则表达式说明:

  • (
    (?: 非捕获组
    \d{1,3} 1 到 3 位数字
    [,.]?可选逗号或点
    )+ 至少其中之一
    )
    整个内容用括号括起来,因此它捕获整个内容(最后一个逗号或点之前的数字)
  • [,.] 最后一个逗号或点(未捕获)
  • (\d{2}) 捕获与最后 2 位数字匹配的组

关于javascript - 只需要从字符串中获取数字值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34903594/

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