使用jQuery解析数字/货币数据

时间:2012-10-08 18:31:24

标签: jquery regex

我有一个货币价值的数据集,如“$ 28.2 mn”和“€19 bn”。对于格式化,我需要转换生成的内容:

<p>$28.2 mn</p>

进入这个:

<p><span class="currency">$</span>28.2 <span class="denomination">mn</span></p>

我需要在页面加载后使用Javascript / jQuery执行此操作。

货币符号后面的数据可能有也可能没有空格。数字和面额之间可能有空格,也可能没有空格。数字有时是完整的,有时会有一个小数值。

我玩了一些正则表达式,但这超出了我的技能。如果有人有任何想法,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

我能够将NullUserException留下的正则表达式与提交给解决方案的其他答案结合起来:

$('p').html(function(i, c){
    var cur = $.trim( c );
    cur = cur.replace(/([^\d.,]+)\s*([\d.,]+)\s*([^\d.,]+)/g,
        '<span class="currency">$1</span> $2 <span class="denomination">$3</span>');
    return cur;
})​

http://jsfiddle.net/Hje94/