Bonjour,

Je mets à jour un petit projet Java développé en 2009 et ce faisant je découvre que la librairie Jakarta ORO (regex Perl5) n'est plus maintenue.

Je regarde donc du côté des librairies natives Java et là je pleure car finalement je trouve ça bien pourri et je comprends pourquoi j'ai utilisé ORO à l'époque...

Bien que j'ai cherché dans plusieurs blogs et articles je ne trouve pas comment récupérer la chaîne trouvée (Nov dans ce cas).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
public static void main(String[] args) {
 
    String pattern = "Today November 6th 2024 blah !";
 
    if (pattern.matches(".*(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec).*")) {
        System.out.println("Found");
    } else {
        System.out.println("Not found");
    }
}
Avec ORO je faisais un truc comme ça...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
private static String changeMonthFormat(String line) {
 
        if (line.matches("(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)")) {
 
            String matchResult = regEx.getMatch().toString();
            ...
Merci pour vos lumières !