javascript - 获取白银或黄金汇率

标签 javascript regex

我编写了小部件程序,用于从彭博网站获取白银或黄金的价格 这些是脚本的一部分:

function getPrice()  {

    var url = new URL();
    url.location = "http://www.bloomberg.com/markets/commodities/futures/";
    url.fetchAsync(PriceReturn);
}


function PriceReturn(url)   {

    var resultStr = url.result;     
    var subCheck = resultStr.substring(resultStr.indexOf("SILVER"));    
    foundStr = subCheck.match("[0-9]+\.[0-9]+");
    setPrice(parseFloat(foundStr).toFixed(2));
}

我可以获得白银的价格(假设现在是 27.30),但是当我想检查黄金价格 (.indexOf("GOLD")) 时(假设现在是 1,585.60)

获取该价格的 subcheck.match() 脚本是什么?

最佳答案

您的问题是 [0-9]+\.[0-9]+1,585.60 等数字不匹配。正确的正则表达式是:

/\d{1,3}(?:,\d{3})*\.\d{2}/

这会将格式化数字匹配到小数点后两位。

关于javascript - 获取白银或黄金汇率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11585039/

相关文章:

javascript - NodeJs JSON 解析问题

Javascript正则表达式难以替换

javascript - 如何在 JS 中从正则表达式获取选定的 str.replace 值

regex - 从 HTML 中获取一个 2 字符串数组....使用正则表达式?

regex - find -regex 比 find | 慢grep

javascript - 按换行符拆分字符串,保留带引号的段

javascript - 为什么 scrollHeight 与 textarea 中的 lineHeight * lines 不同?

javascript - Kendo UI 模板变量范围

javascript - 如何避免X轴显示小数值

regex - 无法在 vba IE 中应用正则表达式