如何使用javascript替换字符串中字符的最后一次出现
收藏

我在寻找如何用'和'替换字符串中的最后一个','时遇到问题:

具有以下字符串: test1,test2,test3

最后我想: test1,test2和test3

我正在尝试这样的事情:

var dialog = 'test1, test2, test3';    
dialog = dialog.replace(new RegExp(', /g').lastIndex, ' and ');

但它不起作用

最佳答案

foo.replace(/,([^,]*)$/, ' and $1')

use the $ (end of line) anchor to give you your position, and look for a pattern to the right of the comma index which does not include any further commas.

编辑:

以上内容完全符合定义的要求(尽管替换字符串任意松散),但基于评论意见,以下内容更好地体现了原始要求的精神。

console.log( 
   'test1, test2, test3'.replace(/,\s([^,]+)$/, ' and $1') 
)

    公众号
    关注公众号订阅更多技术干货!