jQuery将文本替换为美元符号的第一个实例

时间:2011-10-06 13:07:33

标签: jquery regex replace option

我有很多送货方式,我有代码来计算它们。但是,我需要一种方法来替换单词的所有实例(也就是删除),所以我只剩下数字(价格)。

<select name="ShippingSpeedChoice" onchange="this.form.submit();">
<option value="103">In-store Pickup </option>
<option value="701">UPS Ground $9.90 </option>
<option value="703">UPS 3Day Select® $30.88 </option>
</select>

所以我想从选项值701中删除所有内容,所以我只剩下9.90。我也想要为值703发生同样的事情,所以我只剩下30.88,而不是为每个编写一个函数。目前我只有一个选项值701的功能,但我希望它是动态的,它可以完成..可能与正则表达式,我不擅长?

$("option:selected").each(function () { 
var isthePrice = $(this).text().replace("UPS Ground $", ""); }

2 个答案:

答案 0 :(得分:2)

您要替换所有内容(.表示任何字符,*表示“匹配零次或多次”)后跟$(但在正则表达式中$是一个特殊字符,所以你必须使用\)来逃避它:

var isthePrice = $(this).text().replace(/.*\$/, '');

答案 1 :(得分:0)

这应该适合你:

$("option:selected").each(function () { 
    var isthePrice = $(this).text().replace(/^[^$]*/, "");
}