在java中将字符串拆分为多个空格

2022-09-01 03:26:55

可能的重复:
如何按空格拆分字符串

解析文本文件时需要帮助。文本文件包含如下数据

This is     different type   of file.
Can not split  it    using ' '(white space)

我的问题是单词之间的空格不相似。有时有单个空格,有时给出多个空格。

我需要以这样的方式拆分字符串,以便我只得到单词,而不是空格。


答案 1

str.split("\\s+")会工作。在正则表达式的末尾,会将多个空格视为单个空格。它返回一个字符串数组 (),没有任何结果。+String[]" "


答案 2

您可以使用量词来指定要拆分的空格数:-

    `+` - Represents 1 or more
    `*` - Represents 0 or more
    `?` - Represents 0 or 1
`{n,m}` - Represents n to m

因此,将在空格上拆分字符串\\s+one or more

String[] words = yourString.split("\\s+");

另外,如果要指定一些特定的数字,则可以在以下范围内提供范围:{}

yourString.split("\\s{3,6}"); // Split String on 3 to 6 spaces