首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RegEx用于拆分带有逗号的字符串,忽略带空格的逗号

RegEx用于拆分带有逗号的字符串,忽略带空格的逗号
EN

Stack Overflow用户
提问于 2013-10-20 16:51:45
回答 2查看 2K关注 0票数 0

我需要写一个正则表达式,用逗号分隔字符串,而不是用空格分隔字符串。我写了一个,但没有成功。

例如:

代码语言:javascript
复制
String testString = "CONGO, THE DEMOCRATIC REPUBLIC OF THE,IRAN, ISLAMIC REPUBLIC OF,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF,NEPAL,NEW ZEALAND,SRI LANKA";

预期结果:

  1. 刚果民主共和国
  2. 伊朗伊斯兰共和国
  3. 朝鲜民主主义人民共和国
  4. 尼泊尔
  5. 新西兰
  6. 斯里兰卡

我的代码:

代码语言:javascript
复制
public class TestRegEx {
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        String testString = "CONGO, THE DEMOCRATIC REPUBLIC OF THE,IRAN, ISLAMIC REPUBLIC OF,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF,NEPAL,NEW ZEALAND,SRI LANKA";
        String[] output = testString.split("([,][^(,\\s)])+");
        for (String country : output) {
            System.out.println(country);
        }
    }
}

产出:

  1. 刚果民主共和国
  2. RAN,伊斯兰共和国
  3. 朝鲜民主主义人民共和国
  4. EPAL
  5. EW新西兰
  6. 斯里兰卡
EN

回答 2

Stack Overflow用户

发布于 2013-10-20 17:02:31

代码语言:javascript
复制
,(?!\s)

解释:

匹配没有空格的逗号。

在这里看到它的作用:http://regex101.com/r/gW3hJ8

票数 4
EN

Stack Overflow用户

发布于 2013-10-20 16:53:06

使用零宽度后视和前瞻

代码语言:javascript
复制
testString.split("(?<! ),(?! )")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19480101

复制
相关文章

相似问题

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