Assertion:
----------
^
recherche depuis le début de la chaîne (ou de la ligne avec
/m).
$
recherche à la fin de la chaîne (ou de la ligne avec /m).
\b
recherche à la terminaison du mot (entre \w et \W)
\B
ne recherche pas à la terminaison du mot.
\A
recherche depuis le début de la chaîne.
\Z
recherche à la fin de la chaîne.
\G
recherche où le précédent m//g a abandonné.
(?=...)
correspond si le moteur trouve ... ensuite.
(?!...)
correspond si le moteur ne trouve pas ...
ensuite.
Littéraux Alphanumériques:
---------------------------
\n
saut de ligne
\r
retour chariot.
\t
tabulation horizontale.
\f
saut de page.
\b
Backspace.
\d
un chiffre, identique à [0-9].
\D
un non-numérique
\w
un alphanumérique dans un mot identique à [0-9a-z_A-Z]
\W
un caractère ailleurs que dans un mot
\s
un espace, identique à [ \t \n \r \f]
\S
un caractère autre qu'espace
\a
Alerte (bell).
\e
échappement en caractère
\033
échappement en Octal
\x7f DEL
en hexadécimal.
\cC
contrôle-C
\u
force le caractère suivant en majuscule.
\l
force le caractère suivant en minuscule.
\U
force tous les caractères suivant en majuscule.
\L
force tous les caractère suivant en minuscule.
\Q
Préfixe par antislash tout les caractères alphanumériques.
\E
Fin de \U, \L
et \Q.
a savoir:
---------
'
apostrophe simple: pas de d'interpolation
"
apostrophe double: interpolation
(\' et
\\
permettent d'inclure un antislash dans une chaîne
en apostrophe.
<
permet de lire une ligne dans l'entrée standard, le resultat par
defaut ce trouve dans $_
Délimiteurs:
------------
courrant: générique:
signification: interpolation:
''
q//
constante non
""
qq//
constante oui
``
qx//
commande oui
()
qw//
liste de mots non
//
m//
rech de motif oui
s///
s///
substitution oui
y///
tr///
traduction non
les Modificateur:
-----------------
i
permet de rechercher sans tenir compte de la casse (maj, min)
m
traite la chaîne comme des lignes multiples
s
traite la chaîne comme une seule ligne
x
ignore les espace et commantaires
liste des meta caractères:
\ | ( ) [ ] { } ^ $ * +
? .
Les quantificateurs:
--------------------
En général entre accolades,
avec deux chiffres qui signifie minimum et
maximum: exemple: \w{1,} idem
que \w+ qui cherche un ou plusieurs
caractères jusqu'a l'infini
.
+ est l'équivalant
de {1,} (1 ou plus d'élément qui précéde).
* est l'équivalant de
{0,} (0 ou plus d'élément qui précéde).
? est l'équivalant de
{0,1} (0 ou 1 élément qui précéde).
/ca{2}/ correspond à caa et non à caca, pour ça il faut /(ca){2}/
les ancres:
Les ancres permettent de restreindre
l'espace de recherche, on les appelles aussi contreinte, règles
ou assertions.
\b correspondà une limite
de mot, qui est défini comme "rien" entre un
caractère de mot (\w) et un
non-mot (\W), dans le désordre. (Les caractères
qui n'existent pas de par et d'autre
de la chaîne sont appelés des caractères
de non-mot):
exemple: /\balain\b/ qui
correspond à «alain le gredin» mais pas à
«galain».
^ correspond à rien au debut
de la chaîne
$ correspond à rien à
la fin.
les fonctions:
--------------
label: description rapide:
chomp éfface le dernier caractére
de saut de ligne.
lc pour lowercase, met les caractères
en majuscule.
localtime exemple:
$dayname = (dim,lun,mar,mer,jeu,ven,sam)[(localtime(EXPR))[6]];
ou expr est la date en sec depuis 1970 (dans la plus part des systems)