gpt4 book ai didi

java - 为什么我要在列表中插入多个空格

转载 作者:行者123 更新时间:2023-12-04 05:17:49 25 4
gpt4 key购买 nike

我正在读取一个 txt 文件,其中包含一个段落,我正在解析单词并将它们插入到一个列表中;但是,我也在插入空格。不知何故,我的正则表达式似乎并不是每次遇到逗号或点时都起作用,因为它增加了一个空格……如果有人可以建议一个可以解决这个问题的正则表达式?谢谢

public class Exercise225 {

public static void main(String... args) throws FileNotFoundException {
String file = "words.txt";
Scanner inFile = new Scanner(new File(file));
String[] words = null;

String line = "";
List list = new ArrayList();

while (inFile.hasNextLine()) {
line = inFile.nextLine();
words = line.split("[\n|\r|\t| |,|.|)|(|-|\"|!]");

for (int i = 0; i < words.length; i++) {
list.add(words[i].toLowerCase());
}
}
Collections.sort(list);

System.out.println(list.size());

Iterator listItr = list.iterator();

while (listItr.hasNext()) {
System.out.println(listItr.next());
}

inFile.close();

}
}

最佳答案

您可以使用 + 在一个或多个分隔符上进行拆分,而不是在一个分隔符上进行拆分。量词。此外,您不需要在字符类中使用管道。

String regex = "[\n\r\t ,.)(\"!-]+";
words = line.split(regex);

关于java - 为什么我要在列表中插入多个空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14033718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com