java - 使用 split 从 Arraylist 中删除正则表达式

标签 java regex split

我正在尝试创建一个拼写检查器,但在此之前我必须读取两个单独的文件。第一个(字典),我归档了。第二本是一本小说,我必须检查拼写。问题是,我需要从小说中删除所有非字母(正则表达式?)的特殊字符。我正在尝试使用 string.split,但没有运气。我正在测试小说的一小部分,test2。

这是我的代码部分...

public static void readFileBook() {
    File f = new File("test2.txt");
    ArrayList<String> list2 = new ArrayList<String>();
    try {
        Scanner input = new Scanner(f);
        int i = 0;
        while (input.hasNext()) {
            String oliver = input.next();
            list2.add(oliver);
            String[] oliverArray = oliver.split("[.#]");
            System.out.println(list2.get(i));
            i++;
        }
    } catch (IOException e) { //opening failed
        e.printStackTrace();
    }

}`enter code here`

我从“.”开始。和“#”符号。 System.out 只是检查事情是否正常(它们没有),但输出仍然有符号。

我知道可能有一种更优雅的方法可以做到这一点,但讲师在 find 中有一个具体的事情。

如有任何帮助,我们将不胜感激。

最佳答案

所以在你的代码中

String oliver = input.next();
list2.add(oliver);
String[] oliverArray = oliver.split("[.#]");
System.out.println(list2.get(i));

你是(逐行)

将输入读取到字符串 oliver

将 oliver 添加到列表

将 oliver 拆分为 oliverArray,但从未使用过

打印列表中位置i的字符串

如何知道这是否有效?

关于java - 使用 split 从 Arraylist 中删除正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24027699/

相关文章:

python - Pandas 将逗号分隔的字符串列拆分为两个单独的列,并向下分解行

java - 如果父类(super class)有文档,则忽略丢失的文档

java - 连接到 mysql 的实例来自 java 客户端应用程序

java - 使用正则表达式从 json 获取字段

regex - 在 Powershell 中插入数字替换

java - Camel split 后异常不会升级

java - IntelliJ 中的简单自定义重构

java - Locale.getISOCountries() 出现奇怪的错误

正则表达式匹配需要在第一次出现文件扩展名时停止并忽略其余部分

java - 在单词和引号之间分割字符串