我有一个字符串,其中包含一个或多个{numeric} _ {numeric}组合(以逗号分隔),我想删除一个特定的组合。
('6_4,6_5,6_6').replace('\d+_5(,|$)','');
但它没有按预期工作,我只是不明白为什么。 (在Firefox JS-Console中测试)
答案 0 :(得分:4)
使用/.../
分隔符代替'...'
,否则Javascript将尝试匹配该字符串(而不是您的表达式)。
'6_4,6_5,6_6'.replace(/\d+_5(,|$)/,'');
此外,您的初始字符串周围的()
是不必要的(虽然没有造成任何问题)。
答案 1 :(得分:2)
你告诉它要替换一个字符串。
.replace(/\d+_5/,'');
应该这样做。
答案 2 :(得分:2)
因为您将正则表达式作为字符串传递,而不是正则表达式。尝试:
('6_4,6_5,6_6').replace(/\d+_5(,|$)/,'')
答案 3 :(得分:2)
您需要使用带有/而不是字符串的正则表达式语法
('6_4,6_5,6_6').replace(/\d+_5(,|$)/,'');