|
Introduction aux expressions rationnelles |
Certaines pages de GenIndre permettent d'utiliser les expressions rationnelles (regular expressions ou regex en anglais) Perl pour des recherches. Si vous connaissez le langage Perl, c'est la syntaxe à utiliser, sinon cette page vous présente les principales possibilités en allant au plus simple.
On peut utiliser la barre d'espacement mais pour des raisons de lisibilité, je vais utiliser \s sur cette page.
Le point remplace n'importe quel caractère donc une recherche sur D.MBLANT, trouvera DAMBLANT ou DEMBLANT.
Le plus permet d'indiquer que l'on cherche le caractère précédent une fois ou plus. C'est très utile pour les consonnes doublées. SIM+ON+ET trouvera tous les patronymes SIMONET quelque soit le nombre de N et M.
Si on groupe le point et le plus à la fin, on recherche donc sur le début du nom. SIM+ON.+ trouvera les SIMONET, SIMONEAU...
C'est comme le plus sauf que l'on cherche zéro fois ou plus. La lettre précédente est donc facultative. H*YVERNAUD trouvera donc HYVERNAUD ou YVERNAUD.
Il suffit de mettre les lettres possibles entre crochets. On peut améliorer l'exemple DAMBLANT ainsi D[AE][MN]BL[AE]N.* le son AN est recherché avec un A ou un E, suivi d'un M ou un N. La séquence .* indique que l'on peut avoir d'autres lettres à la fin.
Les parties du mot se mettent entre parenthèses et on les sépare avec |.
Par exemple BRUN(AUD|EAU) trouvera les BRUNAUD ou BRUNEAU. Si on avait utilisé BRUN.+ la recherche aurait aussi trouvé les BRUNET.
On peut ne mettre qu'une seule partie (DE)* au début indique que le nom peut commencer par DE mais pas forcément.