Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Trouver toutes les occurrences d'une regexp (et seulement elles) en Java

1 view
Skip to first unread message

Olivier Miakinen

unread,
Oct 19, 2017, 7:04:27 PM10/19/17
to
[diapublication entre fr.comp.lang.regexp et fr.comp.lang.java, suivi
vers fr.comp.lang.java seul]

Bonjour,

Pour une fois c'est moi qui vais poser une question de regexp, parce
qu'en Java je suis un peu perdu entre les méthodes matches, find et
lookingAt de la classe Matcher.

Soit une chaîne telle que celle-ci :
String s = "<ABC> <AABBA> <CBCC> <ABB> <C> ";

Je voudrais en extraire les sous-chaînes successives :
"ABC", "AABBA", "CBCC", "ABB" et "C".

Pour ce faire, je pense donc utiliser le Pattern suivant :
Pattern p = Pattern.compile("<([ABC]*)> ");
puis :
Matcher m = p.matcher(s);

Mais ce n'est pas tout : je voudrais pouvoir détecter si la chaîne
contient autre chose que ce que je compte y trouver. Par exemple,
la rechercher doit échouer si la chaîne de départ vaut :
String s = "<ABC> <AABBA> <CBCC> foo <ABB> <C> ";
mais aussi si elle vaut :
String s = "<ABC> <AABBA> <CBCC> <ABB> <C> bar";

Comment devrais-je m'y prendre ?

Cordialement,
--
Olivier Miakinen
0 new messages