String str = "The party has been divided abs14 on! the issue, with moderates5789 concerned about the effects on the most vulnerable.";
String[] words = str.split("\\s+");
System.out.println(Arrays.toString(words));
Разбиваю строку на массив слов по пробелу. И потом надо как-то задать условие, что если в слове не содержатся спецсимволы и цифры, то его плюсую в переменную count
. Подскажите, как правильно это сделать, без использования regex. Надо создавать ещё массив char
?
Если без использования регулярных выражений, то можно просто в лоб:
public class Main {
public static void main(String[] args) {
String str = "The party has been divided abs14 on! the issue, with moderates5789 concerned about the effects on the most vulnerable.";
String[] words = str.split("\\s+");
int count = 0;
for (String word : words) {
if (isValidWord(word)) {
count++;
}
}
System.out.println("Count: " + count);
}
private static boolean isValidWord(String word) {
char[] chars = word.toCharArray();
for (char c : chars) {
if (!Character.isAlphabetic(c)) {
return false;
}
}
return true;
}
}
UPD:
Ручная проверка на принадлежность символа латинице:
private static boolean isLatinChar(char c) {
return (c >= 65 && c <= 90) || (c >= 97 && c <= 122);
}
где:
65
– код символа A
;90
– код символа Z
;97
– код символа a
;122
– код символа z
.При сравнении происходит неявное преобразование из char
в int
.
Вот вариант сделать все в одну строчку
String str = "The party has been divided abs14 on! the issue, with moderates5789 concerned about the effects on the most vulnerable.";
long count = Pattern.compile("\\s+").splitAsStream(str)
.map(w -> w.chars().allMatch(Character::isAlphabetic))
.filter(c -> c)
.count();
System.out.println("Count: " + count);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый день, пытаюсь создать тест для web уровня приложения, есть некий запрос
Мне нужно запретить использование цифр, пробелов и разных символов (?, &, %, и тд
Только начал осваивать libgdx, наскребал несколько статей по созданию меню и застрял на таком моменте, что приложение не запускается("Unfortunately,...