【问题标题】:How do I use JavaScript RegExp to replace last occurance of a string [duplicate]如何使用 JavaScript RegEx 替换最后一次出现的字符串 [重复]
【发布时间】:2019-10-13 02:15:24
【问题描述】:

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

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

【问题讨论】:

  • 你是只用regexp解决方案还是其他方式?

标签: javascript regex


【解决方案1】:

您可以在逗号前的开头使用贪婪的.*,并在一个组中捕获以将其放回替换:

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

RegEx Demo

.* 将在匹配最后一个 , 之前匹配最长的字符串。

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

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

RegEx Demo 2

【讨论】:

  • 正是我需要的!非常感谢:-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-05-15
  • 2018-01-18
  • 2012-12-01
  • 2014-06-13
  • 1970-01-01
  • 2016-02-14
相关资源
最近更新 更多