如何忽略内容中的逗号..?

时间:2014-10-16 09:46:28

标签: java

//String[] value="name1","name2",**"name3, admin"**,"name4",**"name5,developer"**;

String[] masterData = value[0].split(",", -1);

我的输出是这样的:

name1
name2
name3
admin
name4
name5
developer

但我需要这个输出:

name1
name2
name3 admin
name4
name5 developer

这是我的代码:

String[] mContactContactsMasterData;

for (int i = 0; i < contactPhoneValue.length; i++) {    
    mContactContactsMasterData = contactPhoneValue[i].split(",", -1);
}

如何忽略字符串值中的逗号..

4 个答案:

答案 0 :(得分:0)

我猜你的意思是

String [] values = {"name1","name2","name3, admin","name4","name5,developer"};

因为我不知道所有的星号是什么。在这种情况下,您可以迭代并打印

for (String value : values)
{
  System.out.println(value);
}

如果要删除包含它们的String中的逗号,请改为

System.out.println(value);

DO

System.out.println(value.replace(",", ""));

或者如果你想保留值而不是打印它

value = value.replace(",", " ");

答案 1 :(得分:0)

您可以使用空格或空字符串替换逗号,如下所示:

String[] value={"name1","name2","name3, admin","name4","name5,developer"};

for ( int i =0; i < value.length; i++ )
   value[i] = value[i].replace(",", "");

for ( String str : value)
    System.out.println(str);

答案 2 :(得分:0)

我想你忘了逃避"

public static void main(String[] args) {
    String value = "\"name1\",\"name2\",\"name3, admin\",\"name4\",\"name5,developer\"";
    System.out.println(Arrays.toString(value.split(",(?=\")"))); \\ positive look-ahead

}

O / P :(匹配您的预期输出,即长度= 5)

["name1", "name2", "name3, admin", "name4", "name5,developer"]
                   <-, ignored ->

答案 3 :(得分:0)

我猜你正试图解析一条csv线。你的“,”既是分隔符又是你单元格中的一个字符。

也许尝试使用https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVParser.html csv解析器来解析行 - 然后你可以在拆分后用空格替换每个字符串中的。