javascript正则表达式

时间:2010-11-11 18:12:44

标签: javascript regex

我有这个字符串1,2,3,4,5

并说我删除1然后它变成2,3,4,5或1,2,4,5

如何从列表中删除“1”或任何数字并替换这些额外的逗号,并记住最后一个数字“5”没有逗号。

我可以使用字符串替换javascript函数,我更关心的是最后一个数字

示例如果我删除5 它应显示为1,2,3,4

4 个答案:

答案 0 :(得分:4)

theString.replace(/«the number»,?|,«the number»$/, '')
>>> "1,2,3,4,5".replace(/1,?|,1$/, '')
"2,3,4,5"
>>> "1,2,3,4,5".replace(/2,?|,2$/, '')
"1,3,4,5"
>>> "1,2,3,4,5".replace(/5,?|,5$/, '')
"1,2,3,4"

或者使用

将字符串视为数组
theString.split(/,/).filter(function(x){return x!="«the number»";}).join(",")
>>> "1,2,3,4,5".split(/,/).filter(function(x){return x!="1";}).join(",")
"2,3,4,5"
>>> "1,2,3,4,5".split(/,/).filter(function(x){return x!="2";}).join(",")
"1,3,4,5"
>>> "1,2,3,4,5".split(/,/).filter(function(x){return x!="5";}).join(",")
"1,2,3,4"

答案 1 :(得分:2)

不要使用正则表达式。使用数组。您可以将split()字符串放入逗号中的数组中,然后根据需要删除元素。然后,您可以使用join()将它们作为字符串重新组合在一起。

答案 2 :(得分:1)

function removeValue(value, commaDelimitedString)
{
    var items = commaDelimitedString.split(/,/);
    var idx = items.indexOf(value);
    if(idx!=-1) { items.splice(idx, 1); }
    return items.join(",");
}

答案 3 :(得分:0)

您可以在javascript中使用拆分和合并功能