Caratteri letterali e speciali dell'espressione regolare
Questa sezione descrive la sintassi delle espressioni regolari per fare riferimento a caratteri letterali, caratteri speciali, caratteri non stampabili (come una tabulazione o una nuova riga) e caratteri speciali di escape.
Caratteri letterali
La forma più semplice di corrispondenza dei modelli è la corrispondenza dei caratteri letterali. Se l'espressione regolare è
foo
e la stringa di input è foo
, la corrispondenza avrà esito positivo perché le stringhe sono identiche. Caratteri speciali
Alcuni caratteri sono riservati per un uso speciale nelle espressioni regolari. Questi caratteri speciali sono chiamati metacaratteri. Se si desidera utilizzare caratteri speciali come caratteri letterali, è necessario eseguire l'escape.
Nome carattere | Carattere | Riservato a |
|---|---|---|
parentesi aperta | [
| Inizio di una classe di caratteri |
parentesi di chiusura | ]
| Fine di una classe di caratteri |
trattino | -
| Intervalli di caratteri all'interno di una classe di caratteri |
barra rovesciata | \
| Carattere di escape generale |
accento circonflesso | ^
| Inizio stringa, negazione di una classe di caratteri |
simbolo del dollaro | $
| Fine della stringa |
periodo | .
| Corrisponde a qualsiasi singolo carattere |
tubo | |
| Operatore di alternanza (OR). |
punto interrogativo | ?
| Quantificatore facoltativo, minimizzatore di quantificazione |
asterisco | *
| Zero o più quantificatore |
segno più | +
| Una o più quantificatori |
parentesi aperta | (
| Inizio di un gruppo di sottoespressione |
parentesi di chiusura | )
| Fine di un gruppo di sottoespressione |
parentesi graffa di apertura | {
| Inizio del quantificatore min/max |
parentesi graffa di chiusura | }
| Fine del quantificatore min/max |
Caratteri speciali di escape
È possibile utilizzare i seguenti metodi per considerare un carattere speciale come un carattere letterale (ordinario):
- Far precedere il carattere speciale con a\(carattere barra rovesciata). Esempio: per specificare un asterisco come carattere letterale anziché come quantificatore, utilizzare\*.
- Racchiudere i caratteri speciali all'interno\Q(virgoletta iniziale) e\E(virgoletta finale). Tutto in mezzo\Qe\Eviene quindi considerato come caratteri letterali.
- Per evitare le virgolette letterali in aREGEX()espressione, raddoppiare le virgolette doppie (""). Esempio: per estrarre la parte in pollici da aheightcampo in cui si trovano i valori di esempio6'2",5'11":REGEX([height], "\'(\d)+""$")
Caratteri non stampabili
È possibile utilizzare costrutti di sequenze di caratteri speciali per specificare caratteri non stampabili in un'espressione regolare. Alcuni dei costrutti più comunemente utilizzati sono:
Costruisci | Corrispondenze |
|---|---|
\n
| carattere di nuova riga |
\r
| carattere di ritorno a capo |
\t
| carattere di tabulazione |
\f
| carattere feed modulo |