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

标签 javascript regex

<分区>

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

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

最佳答案

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

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

RegEx Demo

.* 将在匹配最后一个 ,.

之前匹配最长的字符串

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

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

RegEx Demo 2

关于javascript - 如何使用 JavaScript RegEx 替换最后一次出现的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56327160/

相关文章:

java - 用于从完整文件位置提取路径的正则表达式

javascript - 从 url react 加载 svg 图像

regex - 退出值正则表达式bash问题

javascript - 简单的多行正则表达式在 .NET 中失败,但在 ECMAScript 中成功 - 为什么?

正则表达式检测连续字符

javascript - 如何将 PHP 正则表达式转换为将阿拉伯字符匹配到 JS 正则表达式

javascript - 自动关闭选项卡

php - Backbone 模型保存状态

javascript - 如何使用 JavaScript 更改 HTML 元素的 ID?

javascript - 不同的页面延迟加载到 div 中