在jQuery/JavaScript中使用正则表达式(regex)替换所选文本

在jQuery/JavaScript中使用正则表达式(regex)替换所选文本,javascript,jquery,regex,pattern-matching,Javascript,Jquery,Regex,Pattern Matching,在下面的示例中,使用jQuery选择文本。我们如何通过删除其他数据来隔离货币 尝试使用JavaScript的replace无效: var symbol = $("div.price > h5 > div.num").text().replace(/[\d.]*/, ""); 这是示例HTML;jQuery选择器正在工作: <div class="price"> <h5 class="biguns"> <div class="num">

在下面的示例中,使用jQuery选择文本。我们如何通过删除其他数据来隔离货币

尝试使用JavaScript的
replace
无效:

var symbol = $("div.price > h5 > div.num").text().replace(/[\d.]*/, "");
这是示例HTML;jQuery选择器正在工作:

<div class="price">
  <h5 class="biguns">
    <div class="num">
      €12.28
    </div>
    Lowest Price Per Night
  </h5>
</div>

€12.28
每晚最低价格

点必须转义,否则它将匹配每个字符,并且必须设置全局修饰符:

var symbol = $("div.price > h5 > div.num").text().replace(/[\d\.]+/g, "");

如果货币总是第一个字符,并且只有一个字符长,那么您可以很容易地使用它

var symbol = $(".num").text().substr(0,1);

不幸的是,这不匹配没有小数点的12位。不能总是假设你会有一个一致的输入。但是无论如何,在这里,击倒你自己:对不必要的粗鲁评论投了反对票。在本例中,.replace()是一个Javascript方法,不应与jQuery方法和
var symbol = $(".num").text().substr(0,1);