Как посчитать количество слов в строке?
Мне нужно посчитать количество слов, и я предполагаю, что правильный способ сделать это - вычислить, сколько раз предыдущий символ в строке не является буквой (т. Е. Другими символами), потому что это предполагает, что будет двоеточия, пробелы, табуляции и другие знаки в строке. Итак, сначала моя идея состояла в том, чтобы пройтись по каждому символу и посчитать, сколько раз вы не получите букву алфавита
for(int i = 0; i < string.length(); i++) {
for(int j = 0; i < alphabets.length(); j++) {
if (string.charAt(i-1) == alphabets.charAt(j)) {
counter++;
}
}
}
Однако из-за этого я всегда получу массив вне границ. Поэтому мне нужна небольшая помощь или другой способ, который может быть более эффективным. Я думал об использовании Matches только для [a-zA-z], но я не уверен, как мне обработать символ, чтобы он был сопоставим со строкой при подсчете, сколько раз это происходит.
Спасибо