Node.Js替换字符串中的最后一个

时间:2018-02-25 17:02:20

标签: node.js replace

我想替换它在字符串中找到的最后一个文本;

var string = "aaaaaaabbb"

如果我使用string = string.replace(/a/, "text")它会替换它找到的第一个,但我想让它替换它找到的最后一个!

1 个答案:

答案 0 :(得分:0)

分两步解决问题:

  1. 查找搜索字符串的最后一次出现
  2. 替换发现的事件
  3. 简单的实现可能看起来像这样

    function replaceLast(input, search, replacement) {
       // Find last ocurrence
       const index = input.lastIndexOf(search);
       if (index === -1) {
         return input;
       }
       // Replace ocurrence
       return input.substring(0, index) + replacement + input.substring(index + search.length);
    }