【问题标题】:Using regular expressions (regex) to replace selected text in jQuery / JavaScript使用正则表达式 (regex) 替换 jQuery / JavaScript 中的选定文本
【发布时间】:2018-01-03 05:32:56
【问题描述】:

在下面的示例中,使用 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>

【问题讨论】:

    标签: javascript jquery regex pattern-matching


    【解决方案1】:

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

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

    【讨论】:

    【解决方案2】:
    var symbol = $("div.price > h5 > div.num").text().replace(/\d+\.?\d+/, "");
    

    【讨论】:

    • 不幸的是,这与没有任何小数位的 12 不匹配。不能总是假设您会有一致的输入。
    【解决方案3】:

    如果货币总是第一个字符并且它是一个字符长,你可以很容易地得到它

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-24
      • 1970-01-01
      • 2011-09-05
      • 1970-01-01
      • 2011-06-06
      相关资源
      最近更新 更多