我试图解析html文档的价格:
以下是HTML元素的样子:
<div>
<span id="market_buynow_dialog_totals_total" class="market_dialog_totals_cost">0,11€</span>
<span class="market_dialog_totals_label">Total:</span>
</div>
有一个,
,我不想被限制在,
的左侧或右侧,在上面的例子中,我希望得到int 11,对于399,99,我希望获得39999。
这是我目前的解决方案:
var currentPrice = parseFloat(document.getElementById("market_buynow_dialog_totals_total").innerHTML.replace(/[,€]/g, ""));
然而,有一个例外打破了我的小解决方案:价格有时也可能是300,或者250。在这种情况下,currentPrice
是300或250,而不是期望的30000或25000。
我正试图为这个问题找到一个优雅而又特别简短的解决方案。你能帮我吗?
试试这个:
var currentPrice = parseFloat(document.getElementById("market_buynow_dialog_totals_total").innerHTML.replace(/[,€]/g, "").replace(/D/g,'0'));
这将把任何剩余的非整数转换为0。
您可以尝试将"--"部分替换为"00"-只需在€部分之前插入替换即可。