首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascripts正则表达式

问javascripts正则表达式
EN

Stack Overflow用户
提问于 2010-11-12 02:12:44
回答 4查看 66关注 0票数 0

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

假设我去掉1,然后它变成,2,3,4,5或1,2,4,5

如何从列表中删除"1“或任何数字,并替换那些多余的逗号,同时还要记住最后一个数字"5”没有逗号。

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

例如,如果我移去5,它应该显示为1,2,3,4

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-11-12 02:14:48

代码语言:javascript
复制
theString.replace(/«the number»,?|,«the number»$/, '')
代码语言:javascript
复制
>>> "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"

或者将字符串视为数组,使用

代码语言:javascript
复制
theString.split(/,/).filter(function(x){return x!="«the number»";}).join(",")
代码语言:javascript
复制
>>> "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"
票数 4
EN

Stack Overflow用户

发布于 2010-11-12 02:15:09

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

票数 2
EN

Stack Overflow用户

发布于 2010-11-12 02:36:53

代码语言:javascript
复制
function removeValue(value, commaDelimitedString)
{
    var items = commaDelimitedString.split(/,/);
    var idx = items.indexOf(value);
    if(idx!=-1) { items.splice(idx, 1); }
    return items.join(",");
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4157780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档