javascript - 替换字符串中匹配模式的最后一个实例

标签 javascript replace

我只想显示 - 之后的值,如下所示。

    $(function(){
        var aa = "ABCDEFGHIJKLMNOPQRS-TUVEXYZ";
        var bb = aa.substring(aa.indexOf("-") + 1);
        $('#one').text(bb);
    });

    $(function(){
        var cc = "ABC-DEFGHIJ-KLMNOPQRS-TUVEXYZ";
        var dd = cc.substring(cc.indexOf("-") + 1);
        $('#two').text(dd);
    });

这个输出

<div id="one">TUVEXYZ</div>
<div id="two">DEFGHIJ-KLMNOPQRS-TUVEXYZ</div>

第一个可以工作,因为只有一个破折号,但是当有多个破折号时,我的代码不起作用,因为它只是查找第一个 - 。我该如何去寻找最后一个?

例如,如果我的代码按照我想要的方式工作,我希望我的最终结果如下所示。

<div id="one">TUVEXYZ</div>
<div id="two">TUVEXYZ</div>

最佳答案

使用lastIndexOf

var dd = cc.substring(cc.lastIndexOf("-") + 1);

关于javascript - 替换字符串中匹配模式的最后一个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17470636/

相关文章:

javascript - 如何通过 javascript 使用 Photoshop Match Color 功能

javascript - 样式组件中的多个 Prop 检查

javascript - Moment.js : duration shows incorrect result

javascript - 使用 ember.js 异步批量查找或创建

Javascript 正则表达式查找 <a href 标签

Linux 用父目录名替换文件名中的列

Java Regex 删除开始/结束单引号但保留内引号

javascript - 检测用户是否使用 android/iOS 的 webview 还是常规浏览器

java - 任何人都可以建议一个更快的替代这个正则表达式算法吗?

JavaScript 替换所有奇怪的行为