gpt4 book ai didi

java - 计算文本文件中的句子时遇到问题 - Java

转载 作者:行者123 更新时间:2023-11-30 04:53:26 26 4
gpt4 key购买 nike

我的程序计算单词和句子,我想出了如何很容易地计算单词,但我在计算句子时遇到了问题。

这是我的代码:

Scanner in = new Scanner(file);
in.useDelimiter("");
while (in.hasNext()) {
String word = in.next();
char ch = word.charAt(0);
String temp = readWord.replaceAll("...", " ").replaceAll("--", " ");
if(temp.contains(".") || (temp.contains("!") || temp.contains("?!"))) {
if(ch == '.')
sentences++;
}
}

它适用于这样的句子:

“嗨,我叫布拉。”

但它不适用于这个:

“我不知道......也许他不喜欢它。”

单词计数器可以工作,但句子计数器不行。即使我告诉它用空格替换它,它也会计算省略号。

有人知道我做错了什么吗?

最佳答案

replaceAll() 方法的第一个参数是正则表达式 (regex),而不是要匹配的文字字符串。在正则表达式中,点表示“任何字符”。如果您确实想匹配点字符,则必须在点之前使用反斜杠(如果您想在字符串文字中输入反斜杠,则需要在反斜杠之前再使用一个反斜杠)。

另一件事是 replaceAll() 不会更改字符串本身,而是返回一个包含替换内容的新字符串。

关于java - 计算文本文件中的句子时遇到问题 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9345959/

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