$和之间的美元金额。价格(例如:$ 666.99)

时间:2017-01-13 18:51:59

标签: jquery regex

我有一个页面,其中有很多价格以美国标准格式列出:$ 4.99,$ 600.00等。

因为他们都有一个' $'和一个'。我试图从这两个字符之间抓住美元数字并在一个范围内包装美元金额。

示例: $ 4.99 变为 $<span>4</span>.99

感谢!!!

3 个答案:

答案 0 :(得分:1)

<强> REGEXP:

(\b\d+)(?=\.)

原文:

$4444.99

<强>结果:

&#13;
&#13;
const regex = /(\b\d+)(?=\.)/gm;
const str = `\$4444.99`;
const subst = `<span>\$1</span>`;

// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);

console.log(result);
&#13;
&#13;
&#13;

请参阅: https://regex101.com/r/pA0XdW/1

答案 1 :(得分:0)

您可以使用带有类的跨度来包装美元金额,但不能包含整个价格。

$<span class="dollar-value">4</span>.99

然后你可以使用jquery来使用美元值类(.dollar-value)获取美元值

答案 2 :(得分:0)

此解决方案适用于任何有兴趣的人。

$('.price').html(function(i, html) {
    html = $.trim(html);
    return html.slice(0, 1) + "<span>" + html.slice(1,-3) + "</span>" + html.slice(-3);
});

这不完全是我所要求的,但是诀窍。它只修剪第一个($)和最后3个(.00)字符,并在一个范围内将文本包装在它们之间。