如何使用JavaScript RegExp替换字符串的最后一次出现

时间:2019-05-27 13:36:06

标签: javascript regex

我有一个JavaScript变量,其字符串内容带有逗号(,)。如何使用RegExp将最后一个逗号(,)替换为'and'?

var band = "John, Paul, George, Ringo";
var beatles = band.replace(<reg-exp>, "and");
console.log(beatles); //outputs "John, Paul, George and Ringo"

1 个答案:

答案 0 :(得分:3)

您可以在逗号开始前使用贪婪.*并分组捕获以替换它:

str = str.replace(/^(.*),/, "$1 and");

RegEx Demo

.*将匹配最长的字符串,再匹配最后的,

另一种方法是最后使用否定的字符类来在逗号后匹配0个或多个非逗号字符:

str = str.replace(/,\s*([^,]*)$/, " and $1");

RegEx Demo 2