En perl il y a une bibliothèque très sympa Regex::Assemble qui permet de grouper des expression régulière. Il offre de très bonnes performances. C'était une occasion sympa de m'en servir :)
#!/usr/bin/perluse5.10.0;useJSON;useRegexp::Assemble;my$filename='definitions.json';my$data;# lecture du fichier jsonif(open(my$json_str,$filename)){local$/=undef;my$json=JSON->new;$data=$json->decode(<$json_str>);close($json_stream);}# on construit un tableau d'expressions régulièresmy@months_hash;foreachmy$month_number(1..12){my$ra=Regexp::Assemble->new;foreachmy$month(@{$data->{$month_number}}){$ra->add('^'.$month.'$');}push(@months_hash,$ra);}my$input='february';# on test mois après moisforeachmy$month_number(0..11){if($input=~ /($months_hash[$month_number])/i){say1+$month_number;exit;}}
# Perl
Posté par barmic 🦦 . En réponse au journal Convertir des dates avec month_nb. Évalué à 4.
En perl il y a une bibliothèque très sympa Regex::Assemble qui permet de grouper des expression régulière. Il offre de très bonnes performances. C'était une occasion sympa de m'en servir :)
J'utilise un json différent du tiens:
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll