我试图通过在其周围包裹<span>
标记来突出显示字符串的第4,第5和第6个数字。该字符串包含数字,逗号,美元符号和偶尔的点。
这是我的字符串:
"$116,023,150"
我希望输出完全相同,除了第4,第5和第6个数字包含在<span>
标签内。我尝试使用for()
循环在字符串中循环。但是,我不希望任何其他字符影响计数(只有字符串中的数字)。
"$116,<span>0</span><span>2</span><span>3</span>,150"
让我们说字符串会有所不同,我仍然希望第4,第5和第6个数字包含在<span>
标记中。
"$61,0<span>0</span><span>2</span>.<span>1</span>2" == "$61,002.12"
如何使用Javascript / jQuery实现此目的?
答案 0 :(得分:0)
我会使用带有替换函数的正则表达式,这取决于&#34;索引&#34;数字,它被包裹在<span>
标签中。 (不是指数,它是当前的数字位数)
$("div").html(function(_, old) {
var i = 0;
return old.replace(/\d/g, function(num) {
i++;
return i >= 4 && i <= 6 ? "<span>" + num + "</span>" : num;
});
});
&#13;
span { font-weight: bold }
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>$116,023,150</div>
<div>$61,002.12</div>
&#13;