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

如何用逗号和换行符分隔?

尚安平
2023-03-14

如何转换这样的内容(假设我使用缓冲阅读器读取信息?):

0, blah, hi\n
1, bluh, test

对此:

String[] testArray:
0, blah, hi, 1, bluh, test

如果这有意义的话?基本上删除逗号和换行符,并将每个不同的单词插入到它自己的元素中。

共有3个答案

邓德厚
2023-03-14

以下是 Java 8 的答案。

String[] array = Files.newBufferedReader(PATH_OF_THE_FILE)
    .lines()
    .flatMap(string -> java.util.stream.Stream.of(string.split(",\\s")))
    .collect(Collectors.toList())
    .toArray(new String[0]);
何聪
2023-03-14

使用带有自定义分隔符的Scanner做这样的事情比重新发明轮子要容易得多,恕我直言:

String str = "0, blah, hi\n1, bluh, test";
Reader reader = new StringReader(str); // Just an example, any Reader would work
Scanner scanner = new Scanner(reader).useDelimiter(", ");
List<String> tmpList = new LinkedList<>();
scanner.forEachRemaining(tmpList::add);
String[] array = tmpList.toArray(new String[tmpList.size()]);
陈增
2023-03-14

一个幼稚的实现:

List<String> tokens = new ArrayList<>();
for (String line = in.readLine(); line != null; line = in.readLine()) {
    for (String token: line.split(",\\s*")) {
        tokens.add(token);
    }
}
String[] testArray = tokens.toArray(new String[tokens.size()]);
 类似资料:
  • 问题内容: 我有一些特殊字符的字符串。目的是检索每行的String [](分隔)。您可以使用特殊字符“,在其中可以使用/ n和, 您会看到“ /”中有您/ n。 任何可以帮助我解析此。 谢谢 __更多说明 与主刺我需要分开这些 问题是:对于Julie,KameL,Titi ,在KameL和Titi之间存在换行符/ n,或者在Time,tomy,tony,tini之间存在类似的换行问题,或者 在to

  • 问题内容: 我已经看到了许多相关的问题,但是都没有直接解决我想做的事情。我正在从CSV文件中读取文本行。 所有项目都用引号引起来,有些则在引号内有其他逗号。我想按逗号分隔行,但忽略引号内的逗号。有没有一种方法可以在Python中执行此操作,而无需使用许多正则表达式语句。 一个例子是: 我想将其解析为4个单独的值变量: 我想念一个简单的选择吗? 问题答案: 不要尝试重新发明轮子。 如果要读取CSV文

  • 在逗号处划分字符串的最佳方法是什么,这样每个单词都可以成为ArrayList的一个元素? 例如:

  • 问题内容: 我得到了这样的格式的字符串: 因此从根本上讲,它是演员姓名的列表(可选地,后面是他们在括号中的角色)。角色本身可以包含逗号(演员的名字不能,我强烈希望如此)。 我的目标是将此字符串分成成对的列表- 。 一个明显的解决方案是遍历每个字符,检查是否出现,并在出现逗号时将其拆分。但这似乎有点沉重… 我正在考虑使用正则表达式拆分它:首先用括号将字符串拆分: 这里的奇数元素是演员名称,甚至是角色

  • 问题内容: 我有一个长度未知的字符串,看起来像这样 将这些字符串用逗号分隔的最佳方法是什么,以便每个单词都可以成为的元素? 例如 问题答案: 你可以这样做: 基本上,该方法将根据你正在传递的(在这种情况下)定界符来分割字符串,并将返回字符串数组。 但是,你似乎位于字符串列表而不是数组之后,因此必须使用该实用程序将数组转换为列表。就像供你参考一样,你也可以这样做: 但是通常最好是对接口进行编程,而不

  • 问题内容: Java中是否有任何内置方法可以将逗号分隔的String转换为某个容器(例如数组,List或Vector)?还是我需要为此编写自定义代码? 问题答案: 将逗号分隔的字符串转换为列表 上面的代码在定义为的定界符上分割字符串:它将把单词放入列表中,并折叠单词和逗号之间的任何空格。 请注意,这仅返回数组的包装器:例如,你不能从结果中返回结果。对于实际,你必须进一步使用。