0

我有一个数据集,其货币价值如“2820 万美元”和“190 亿欧元”。对于格式化,我需要打开这个生成的内容:

<p>$28.2 mn</p>

进入这个:

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

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

数据在货币符号后可能有也可能没有空格。数字和面额之间可能有也可能没有空格。这些数字有时是整数,有时是十进制值。

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

4

1 回答 1

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/

于 2012-10-09T15:29:00.600 回答