83 votes

Comment supprimer la ponctuation d'un texte saisi en Java ?

J'essaie d'obtenir une phrase en utilisant l'entrée de l'utilisateur en Java, et j'ai besoin de la mettre en minuscules et d'enlever toute la ponctuation. Voici mon code :

    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;

Je n'arrive pas à trouver un moyen de supprimer tous les caractères non alphabétiques. J'ai essayé d'utiliser des regex et des itérateurs sans succès. Merci pour votre aide.

0voto

Si votre objectif est de SUPPRIMER la ponctuation, reportez-vous à ce qui précède. Si l'objectif est de trouver des mots, aucune des solutions ci-dessus ne le permet. ENTRÉE : "Ceci. et:cela. avec'l'autre". SORTIE : ["Ceci", "et", "cela", "avec", "le", "autre"] mais ce que la plupart de ces solutions "replaceAll" vous donnent en réalité, c'est.. : OUTPUT : ["This", "andthat", "withtheother"]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X