如何替换字符串中字符的最后一个实例?

pan*_*hro 1 javascript regex

我需要将逗号的最后一个实例替换为and。我已经试过了:

myString = myString.replace('/_([^,]*)$/','and$1');
Run Code Online (Sandbox Code Playgroud)

但是字符串不受影响。

有任何想法吗?

Jac*_*cob 5

您使用a _而不是a,,并将正则表达式用引号引起来。我认为您还需要在之前添加一个空格and

myString = myString.replace(/,([^,]*)$/,'\ and$1');


编辑:

如果您愿意,也可以不使用正则表达式来执行此操作:

str = "Maria, David, Charles, Natalie";
lastComma = str.lastIndexOf(',');
newStr = str.substring(0, lastComma) + ' and' + str.substring(lastComma + 1);

//=> "Maria, David, Charles and Natalie"
Run Code Online (Sandbox Code Playgroud)