Afficher les mots d'une certaine longueur
Résolu/Fermé
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
-
25 nov. 2017 à 14:45
histl4000 Messages postés 129 Date d'inscription lundi 3 juillet 2017 Statut Membre Dernière intervention 12 juillet 2018 - 25 nov. 2017 à 17:23
histl4000 Messages postés 129 Date d'inscription lundi 3 juillet 2017 Statut Membre Dernière intervention 12 juillet 2018 - 25 nov. 2017 à 17:23
A voir également:
- Afficher les mots d'une certaine longueur
- Afficher mot de passe wifi android - Guide
- Afficher appdata - Guide
- Afficher mot de passe - Guide
- Afficher les commentaires word - Guide
4 réponses
Utilisateur anonyme
25 nov. 2017 à 15:09
25 nov. 2017 à 15:09
Bonjour
déjà dans ton texte exemple, y'a pas de mot de longueur égale à 3, donc cherches longueur supérieure ou égale à 3?
Ensuite, tu cherches à faire l'inverse de ce que tu expliques, c'est à dire
Il me semble à la fois plus simple et plus logique à code d'extraire les mots, et de traiter l'extraction
voilà un exemple qui extrait les mots de longueur 3 ou plus, sans les espaces, ponctuation, etc...
déjà dans ton texte exemple, y'a pas de mot de longueur égale à 3, donc cherches longueur supérieure ou égale à 3?
Ensuite, tu cherches à faire l'inverse de ce que tu expliques, c'est à dire
J'aimerai afficher les motset le code que tu montres essayes d'effacer des parties de texte.
Il me semble à la fois plus simple et plus logique à code d'extraire les mots, et de traiter l'extraction
voilà un exemple qui extrait les mots de longueur 3 ou plus, sans les espaces, ponctuation, etc...
http://regexstorm.net/tester?p=%28%3f%3c%3d%5cb%29%5cw%7b3%2c%7d%28%3f%3d%5cb%29&i=jess+j6ess+%c3%a7a+ca+s%28+!+%3f123.+Coucoucoucoucocuocucoucoucou%2c
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
25 nov. 2017 à 15:44
25 nov. 2017 à 15:44
Bonjour,
Un exemple :
Ce qui donne :
Un exemple :
import java.util.stream.Stream; Stream.of(phrase.split(" ")) .filter(s -> s.length() >= 3) .forEach(System.out::println);
Ce qui donne :
jess
j6ess
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
3
Modifié le 25 nov. 2017 à 16:10
Modifié le 25 nov. 2017 à 16:10
Bonjour,
Est-ce qu'il y aura moyen de mettre Stream.of(phrase.split(" ")).filter(s -> s.length() >= 3);
dans une variable de type String ?
Car j'ai vraiment besoin de le faire à l'aide d'une variable string pour l'écrire sur un texte avec "append".
Est-ce qu'il y aura moyen de mettre Stream.of(phrase.split(" ")).filter(s -> s.length() >= 3);
dans une variable de type String ?
Car j'ai vraiment besoin de le faire à l'aide d'une variable string pour l'écrire sur un texte avec "append".
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 019
>
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
25 nov. 2017 à 16:12
25 nov. 2017 à 16:12
Oui, il suffit de remplacer l'opération finale (où je fais le println) par un collecteur :
Ce qui donne :
String result = Stream.of(phrase.split(" ")) .filter(s -> s.length() >= 3) .collect(Collectors.joining(" "));
Ce qui donne :
jess j6ess
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
3
>
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
Modifié le 25 nov. 2017 à 16:25
Modifié le 25 nov. 2017 à 16:25
Merci beaucoup, cela fonctionne très bien
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
3
25 nov. 2017 à 15:18
25 nov. 2017 à 15:18
Merci de m'avoir répondu. Oui, je me suis mal exprimé. Je voulais dire que je voulais récupérer et afficher les mots de longueur 3 ou plus.
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
3
Modifié le 25 nov. 2017 à 15:22
Modifié le 25 nov. 2017 à 15:22
Je pensais supprimer les mots < 3 puis les afficher. Par contre, je ne comprends pas très bien la solution que vous m'avez donné ? Donc en essayant le code : texte.replaceAll("(?<=\\b)\\w{3,}(?=\\b)", "");
j'ai comme résultat: ça ca s( ! ?
j'ai comme résultat: ça ca s( ! ?
histl4000
Messages postés
129
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
12 juillet 2018
3
>
Utilisateur anonyme
25 nov. 2017 à 17:23
25 nov. 2017 à 17:23
Oui, je m'en suis rendu compte par après. Je ne connaissais pas le site que vous m'avez envoyer. Il pourra me servir plus tard. Merci.