所以,我试图使用缓冲的阅读器将文档(.txt)读入java项目,编辑它,并将其返回/输出。我遇到的问题是我无法识别标点符号。 该文件如下:
你好hello.hello,你好/你好?
作为对我希望能够处理的不同情况的测试。 我得到了:
hello hello hello hello hello
有什么建议吗? (如果需要回答,将提供代码部分) 我正在考虑使用分隔符,但无法弄清楚它是如何在上下文中进行的(或者甚至可以使用缓冲的阅读器)。
顺便说一句,我正在逐字逐句地阅读和编辑这个文档,并通过检查多个数组来运行它以包含某些字符。如果这有帮助。
答案 0 :(得分:0)
您可以通过循环readLine将整个文件读入字符串(不推荐用于大文件)
然后在字符串上:
String.split("[\s.,/]")
这会将你的字符串分成几个不同的字符。
或者,如果您想要拆分所有非字母:
String.split("[^A-Za-z]")
这会给你一个字符串数组,这很容易使用。然后你最后回复。
答案 1 :(得分:0)
如果你想处理所有的标点符号和空格,我建议你去lucene tokenizer并完成工作。 这里给出了一个示例实现 How to use a Lucene Analyzer to tokenize a String? 但这取决于您的要求。如果它只是逗号和空格,那么正则表达式就可以完成所需的