Exemple:
if ($nom =~ /^[Dd]upon/) {print "OK !";}
=> Ok si nom est 'dupont', 'dupond', 'Dupont-Lassoeur'
^ signifie « commence par »
On peut rajouter « i » derrière l'expression pour signifier qu'on ne
différencie pas les majuscules des minuscules.
Le contraire de l'opérateur =~ est !~ (ne contient pas ...)
if ($nom !~ /^dupon/i) {print "Non...";}
Options:
chaîne =~/expression/g
recherche toutes les occurences, et non pas seulement la premiere
chaîne =~/expression/i
insensible aux majuscules/minuscules
Remarque :Si l'on veut qu'un carcatère spécial apparaisse tel quel, il faut le précéder d'un « anti-
slash » (\), les caractères spéciaux sont :
« ^ | ( ) [ ] { } \ / $ + * ? .»
Les parenthèses permettent de récupérer
des parties de l'expression dans les variables $1, $2, etc...
Par exemple:
$chaine = " ORGANISM Mycoplasma genitalium";
$chaine =~ /ORGANISM\s+(\S+)\s+(\S+)/
print "genre: $1, espece: $2\n"
options :
s/exp/remp/i;
=> Indifférenciation minuscules/majuscules
s/exp/remp/g;
=> Remplace toute occurrence (pas seulement la
première)
Pour remplacer un texte par le même en majuscule (\U):
$chaine =~ s/([a-z])/\U$1/g;
\U$1 signifie $1 en majuscules