我有一个货币价值的数据集,如“$ 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执行此操作。
货币符号后面的数据可能有也可能没有空格。数字和面额之间可能有空格,也可能没有空格。数字有时是完整的,有时会有一个小数值。
我玩了一些正则表达式,但这超出了我的技能。如果有人有任何想法,我将不胜感激。
答案 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;
})