当前位置: 首页 > 知识库问答 >
问题:

字符串标记:按逗号拆分字符串,忽略双引号中的逗号

林富
2023-03-14

我有一根下面这样的弦-

value1,value2,value3,value4,“value5,1234”,value6,value7,“value8”,value9,“value10,123.23”

共有1个答案

叶炜
2023-03-14

使用像OpenCSV这样的CSV解析器来自动处理像引号元素中的逗号、跨多行的值等等。您也可以使用库将文本序列化回CSV。

String str = "value1, value2, value3, value4, \"value5, 1234\", " +
        "value6, value7, \"value8\", value9, \"value10, 123.23\"";

CSVReader reader = new CSVReader(new StringReader(str));

String [] tokens;
while ((tokens = reader.readNext()) != null) {
    System.out.println(tokens[0]); // value1
    System.out.println(tokens[4]); // value5, 1234
    System.out.println(tokens[9]); // value10, 123.23
}
 类似资料:
  • 问题内容: 我有一个像下面的字符串- 值1,值2,值3,值4,“值5、1234”,值6,值7,“值8”,值9,“值10、123.23” 如果我在字符串上方标记化,则会得到逗号分隔的标记。但是我想说的是,字符串令牌生成器在进行拆分时会忽略双引号后的逗号。我怎么说呢 提前致谢 沙市 问题答案: 使用像OpenCSV这样的CSV解析器来自动处理带引号的元素中的逗号,跨多行的值等。您也可以使用该库将文本序

  • 输入字符串用逗号分隔。但它可能包含双引号内的逗号,需要忽略。下面是示例字符串 下面是我用来拆分逗号的代码,但如果逗号是双引号中字符串的一部分,它就会失败。 所以任何解决这个问题的想法。

  • 问题内容: 我有一些输入如下所示: 逗号分隔的值可以是任何顺序。我想用逗号分割字符串;但是,在双引号内包含某些内容的情况下,我需要它既忽略逗号又去除引号(如果可能)。因此,基本上,输出将是以下字符串列表: 我已经看过其他一些答案,并且我认为正则表达式是最好的,但是我想出这些答案很糟糕。 问题答案: 拉瑟是对的。这是一个逗号分隔的值文件,因此您应该使用module。一个简单的例子:

  • 问题内容: 我有一个模糊的字符串,像这样: 我想按逗号分割-但我需要忽略引号中的逗号。我怎样才能做到这一点?似乎正则表达式方法失败了;我想我可以在看到报价时手动扫描并进入其他模式,但是使用预先存在的库会很好。(编辑:我想我的意思是那些已经属于JDK或已经属于诸如Apache Commons之类的常用库的库。) 上面的字符串应分为: 注意:这不是CSV文件,它是文件中包含的单个字符串,具有较大的整体

  • 问题内容: 我有这样一个字符串: 我想按逗号分割-但我需要忽略引号中的逗号。我怎样才能做到这一点?似乎正则表达式方法失败了;我想我可以在看到报价时手动扫描并进入其他模式,但是使用预先存在的库会很好。 上面的字符串应分为: 问题答案: 可以使用正则表达式 输出:

  • 我想拆分一个字符串基于逗号不包括一个在双引号,也如果有任何相邻的逗号,他们应该被视为单独的令牌 我可以使用正则表达式([^\“]*)\” 但如果有相邻的逗号,它就无法正确地标记。字符串示例 输出应该是 请帮忙