Un'Espressione Regolare (ER) è formata da:
Una sequenza di caratteri. Sequenza da interpretare nel suo significato letterale. Il tipo più semplice di Espressione Regolare consiste solo di una serie di caratteri senza alcun metacarattere.
Àncore. Indicano (àncorano) la posizione, nella riga di testo, che l'ER deve verificare. Ad esempio, ^ e $ sono àncore.
Modificatori. Espandono o restringono (modificano) la dimensione del testo che l'ER deve verificare. Sono modificatori l'asterisco, le parentesi quadre e la barra inversa.
Le Espressioni Regolari vengono principalmente impiegate nelle ricerche di un testo e nella manipolazione di stringhe. Una ER verifica un singolo carattere o una serie di caratteri -- una sottostringa o una stringa intera.
L'asterisco -- * -- verifica un numero qualsiasi di ripetizioni della stringa di caratteri o l'ER che lo precede, compreso nessun carattere.
"1133*" verifica 11 + uno o più 3 + altri possibili caratteri: 113, 1133, 111312, eccetera.
Il punto -- . -- verifica un carattere qualsiasi , tranne il ritorno a capo. [1]
"13." verifica 13 + almeno un carattere qualsiasi (compreso lo spazio): 1133, 11333, ma non il solo 13.
L'accento circonflesso -- ^ -- verifica l'inizio di una riga, ma talvolta, secondo il contesto, nega il significato della serie di caratteri in una ER.
Il simbolo del dollaro -- $ -- alla fine di una ER verifica la fine di una riga.
"XXX$" verifica XXX alla fine di una riga.
"^$" verifica le righe vuote.
Le parentesi quadre -- [...] -- racchiudono una serie di caratteri da verificare in una singola ER.
"[xyz]" verifica i caratteri x, y o z.
"[c-n]" verifica tutti i caratteri compresi nell'intervallo da c a n.
"[B-Pk-y]" verifica tutti i caratteri compresi negli intervalli da B a P e da k a y.
"[a-z0-9]" verifica tutte le lettere minuscole o tutte le cifre.
"[^b-d]" verifica tutti i caratteri tranne quelli compresi nell'intervallo da b a d. Questo è un esempio di ^ che nega, o inverte, il significato della ER che segue (assumendo un ruolo simile a ! in un contesto diverso).
Sequenze combinate di caratteri racchiusi tra parentesi quadre verificano le possibili modalità di scrittura di una parola. "[Yy][Ee][Ss]" verifica yes, Yes, YES, yEs e così via. "[0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]" verifica il numero di Previdenza Sociale. (negli U.S.A [N.d.T.]).
La barra inversa -- \ -- è il carattere di "escape" > per un carattere speciale, il che significa che quel carattere verrà interpretato letteralmente.
"\$" riporta il simbolo del "$" al suo significato letterale, invece che a quello di fine riga in una ER. Allo stesso modo "\\" assume il significato letterale di "\".
"Parentesi acute" con escaping -- \<...\> -- indicano l'inizio e la fine di una parola.
Le parentesi acute vanno usate con l'escaping perché, altrimenti, avrebbero il loro significato letterale.
"\<tre\>" verifica la parola "tre", ma non "treno", "otre", "strega", ecc.