使用javascript删除字符串中最后出现的逗号

Posted

技术标签:

【中文标题】使用javascript删除字符串中最后出现的逗号【英文标题】:Remove last appeared comma in string using javascript 【发布时间】:2013-01-16 10:07:12 【问题描述】:

我有一条短信

测试,文本,123,没有最后一个逗号

需要它

测试,文本,123 没有最后一个逗号

(123 后没有逗号)。如何使用 javasctipt 实现这一点?

【问题讨论】:

【参考方案1】:
str.replace(/,(?=[^,]*$)/, '')

这使用positive lookahead assertion 替换逗号,后跟非逗号。

【讨论】:

简短、准确且有解释!谢谢。 ♡ 拿那个,牛津逗号 - muuuhahahahaha .replace(/,(?=[^,]*$)/, ' and')【参考方案2】:

非正则表达式选项:

var str = "test, text, 123, without last comma";
var index = str.lastIndexOf(",");
str = str.substring(0, index) + str.substring(index + 1);

但我喜欢the regex one。 :-)

【讨论】:

:( 不知道 javasctipt 有 lastIndexOf.. 谢谢!【参考方案3】:

用正则表达式替换的另一种方法:

str.replace(/([/s/S]*),/, '$1')

这依赖于* 是贪婪的事实,并且正则表达式最终将匹配字符串中的最后一个,[/s/S] 匹配任何字符,而. 匹配除换行之外的任何字符。

【讨论】:

以上是关于使用javascript删除字符串中最后出现的逗号的主要内容,如果未能解决你的问题,请参考以下文章

如何删除最后出现的逗号,逗号本身可能不是SQL中String的最后一个字符

删除文件c ++中字符串中最后一次出现的字符

JSON 从最后一个对象中删除尾随逗号

jQuery从数组中删除最后一个逗号

Java如何将拼接字符串中的最后一个逗号去掉

如何使用javascript从字符串末尾删除多个逗号?