【发布时间】:2021-11-26 02:24:46
【问题描述】:
公共静态空词(字符串文本){ int numWords = 1;
for (int charNum = 0; charNum < text.length(); charNum++) {
char letter = text.charAt(charNum);
if(charNum + 1 < text.length()) {
char nextLetter = text.charAt(charNum + 1);
if(letter == '.' || letter == ':' || letter == ';' || letter == '?' || letter == '!'|| letter == ' ' || letter == '\n' || letter == '\t') {
if(nextLetter != '.' || nextLetter != ':' || nextLetter != ';' || nextLetter != '?' || nextLetter != '!'|| nextLetter != ' ' || nextLetter != '\n' || nextLetter != '\t')
numWords += 1;
}
}
}
System.out.println("Number of words: " + numWords);
}
字符串“是 this_one_long_word 还是几个???你怎么看??太多”应该打印 10 个单词和“!这使用句点.as.word.delimiters 并且可能很棘手。”应该打印 10 个字。
这是描述:一个单词是一个或多个字符的序列,由空格或句子终止符(句点、冒号、分号、问号、感叹号)分隔,无论它是否是实际的英文单词。空白定义为空格、制表符 ('\t')、换行符 ('\n') 和字符串本身的结尾。这再次给出了一些可能没有意义的结果。例如文本“I_don't_like_to_use_SPACES-EVER!”有一个词:I_don't_like_to_use_SPACES-EVER。
【问题讨论】: