Próbuję uzyskać zdanie za pomocą danych wejściowych od użytkownika w Javie, i muszę zrobić to małe litery i usunąć wszystkie interpunkcji. Oto mój kod:Jak usunąć interpunkcję z tekstu wejściowego w języku Java?
String[] words = instring.split("\\s+");
for (int i = 0; i < words.length; i++) {
words[i] = words[i].toLowerCase();
}
String[] wordsout = new String[50];
Arrays.fill(wordsout,"");
int e = 0;
for (int i = 0; i < words.length; i++) {
if (words[i] != "") {
wordsout[e] = words[e];
wordsout[e] = wordsout[e].replaceAll(" ", "");
e++;
}
}
return wordsout;
Nie mogę znaleźć sposobu na usunięcie wszystkich znaków innych niż litery. Próbowałem używać wyrażeń regularnych i iteratorów bez powodzenia. Dzięki za pomoc.
Jeśli celem jest usunięcie interpunkcji, czy nie "replaceAll (" \\ p {P} "," ") miałoby więcej sensu? – VGR
@VGR na podstawie tytułu tak, ale OP wyjaśnia w pytaniu * usunąć wszystkie znaki inne niż litery * – Bohemian
Czy "å" jest literą? Ponieważ ta postać zostanie usunięta. –