首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将字符串拆分为第二个逗号,然后由第三个逗号分隔

将字符串拆分为第二个逗号,然后由第三个逗号分隔
EN

Stack Overflow用户
提问于 2018-05-16 07:41:42
回答 2查看 424关注 0票数 2

我有一根绳子,看起来像这样:

少于5,000元、5,000元至9,999元、10,000元至14,999元、45,000元至49,999元、50,000元至54,999元

我想要的是:

少于5,000元或5,000元至9,999元或10,000元-14,999元或45,000元-49,999元或50,000元至54,999元

我试过的是:

代码语言:javascript
复制
items[1].Split(new char[1] { ',' }, StringSplitOptions.RemoveEmptyEntries)
        .Select(e => new AnswerModel { Name = e }).ToList()

名称应为“少于5,000元”,然后是“5,000元至9,999元”等。

但是它被每个逗号分开,我需要先用第二个,然后再用第三个。

什么是最好的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-16 07:45:19

如果您的字符串看起来与您在这里粘贴的一模一样,并且始终具有这样的模式,那么您可以在一个由两个字符组成的字符串上拆分:

代码语言:javascript
复制
items[1].Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries);

更新:

但是,如果您的字符串没有空格,那么您应该首先用一些独特的字符(如| )替换,然后拆分到这个新字符上:

代码语言:javascript
复制
items[1].Replace(",$", "|$").Split(new char[1] { '|' }, StringSplitOptions.RemoveEmptyEntries);

您也可以用or $替换它,并且字符串已经以所需的格式出现,并且不需要再次拆分和连接。

这应该能起作用。

票数 2
EN

Stack Overflow用户

发布于 2018-05-16 07:45:00

也许你可以和", "分开

代码语言:javascript
复制
string s = "Less than $5,000, $5,000-$9,999, $10,000-$14,999, $45,000-$49,999, $50,000-$54,999";
string result = string.Join(" or ", s.Split(new []{", "},StringSplitOptions.None));

返回所需的结果:

少于5,000元或5,000元至9,999元或10,000元-14,999元或45,000元-49,999元或50,000元至54,999元

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50365009

复制
相关文章

相似问题

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