Sto cercando di ottenere una frase utilizzando l'input dell'utente in Java, e ho bisogno di renderla in minuscolo e rimuovere tutti i segni di punteggiatura. Ecco il mio codice:Come posso rimuovere la punteggiatura dal testo di input in 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;
Non riesco a trovare alcun modo per rimuovere tutti i caratteri non lettera. Ho provato a usare regex e iterators senza fortuna. Grazie per qualsiasi aiuto.
Se l'obiettivo è rimuovere la punteggiatura, non sarebbe "replaceAll (" \\ p {P} "," ")' più sensato? – VGR
@VGR basato sul titolo sì, ma OP chiarisce in questione * rimuove tutti i caratteri non lettera * – Bohemian
"å" è una lettera? Dal momento che quel personaggio sarebbe stato rimosso. –