【发布时间】:2013-01-16 10:07:12
【问题描述】:
我有一条短信
测试,文本,123,没有最后一个逗号
需要它
测试,文本,123 没有最后一个逗号
(123 后没有逗号)。如何使用 javasctipt 实现这一点?
【问题讨论】:
标签: javascript regex string comma
我有一条短信
测试,文本,123,没有最后一个逗号
需要它
测试,文本,123 没有最后一个逗号
(123 后没有逗号)。如何使用 javasctipt 实现这一点?
【问题讨论】:
标签: javascript regex string comma
str.replace(/,(?=[^,]*$)/, '')
这使用positive lookahead assertion 替换逗号,后跟非逗号。
【讨论】:
.replace(/,(?=[^,]*$)/, ' and')
非正则表达式选项:
var str = "test, text, 123, without last comma";
var index = str.lastIndexOf(",");
str = str.substring(0, index) + str.substring(index + 1);
但我喜欢the regex one。 :-)
【讨论】:
用正则表达式替换的另一种方法:
str.replace(/([/s/S]*),/, '$1')
这依赖于* 是贪婪的事实,并且正则表达式最终将匹配字符串中的最后一个,。 [/s/S] 匹配任何字符,而. 匹配除换行之外的任何字符。
【讨论】: