0

我正在尝试从 html 文档中解析价格:

以下是 HTML 元素的外观:

<div>
<span id="market_buynow_dialog_totals_total"  class="market_dialog_totals_cost">0,11€&lt;/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。

我正在尝试为这个问题找到一个优雅且特别简短的解决方案。你能帮我吗?

4

2 回答 2

0

您可以尝试用“00”替换“--”部分 - 只需在 ,€ 部分之前插入替换。

于 2014-10-14T21:34:16.567 回答
0

尝试这个:

var currentPrice = parseFloat(document.getElementById("market_buynow_dialog_totals_total").innerHTML.replace(/[,€]/g, "").replace(/\D/g,'0'));

这会将任何剩余的非整数转换为 0。

于 2014-10-14T21:41:09.587 回答