Un'espressione regolare è una stringa codificata. Definisce una serie di stringhe che corrispondono all'espressione. E' possibile che un'espressione regolare sia composta di una o più diramazioni (scelte) e che ciascuna di esse sia una stringa composta di caratteri, classi di caratteri o espressioni tra parentesi con modificatori per specificare le regole di ripetizione.
La sintassi dell'espressione regolare supportata è una serie secondaria di espressioni regolari di schemi XML. Per la sintassi completa, fare riferimento all'Appendix F in XML Schema Part 2: Datatypes, disponibile sul sito Web all'indirizzo World Wide Web Consortium (W3C).
Nella tabella riportata di seguito sono elencati gli elementi di sintassi delle espressioni regolari supportati:
Metacarattere | Spiegazione |
\ | Escape |
. | Qualsiasi carattere singolo |
* | Carattere precedente 0 o più volte |
+ | Carattere precedente 1 o più volte |
? | Carattere precedente 0 o 1 volta |
{...} | Ricorrenze di precedente 1 |
[...] | Corrispondenza a una delle classi contenute |
[^...] | Corrispondenza a una delle classi non contenute 1 |
(...) | Raggruppamento delle espressioni 1 |
| | Corrispondenza al precedente o al seguente |
Sequenza Escape | Spiegazione |
\n | Nuova riga |
\r | Ritorno a capo |
\t | Tabulazione |
\e | Escape |
Codice di classe | Spiegazione |
\d | Cifra [0-9] |
\D | Carattere diverso da cifra [^0-9] 2 |
\s | Spazio vuoto [ \t\n\r] |
\S | Carattere diverso da spazio vuoto [^ \t\n\r] 2 |
\p{L} | Tutti caratteri letterali 3 |
\p{N} | Tutti numeri, simile a \d 4 |
[\p{N}\p{L}] | Tutti numeri e tutti caratteri letterali, simile a \w 4 |
\P{L} | Caratteri diversi da lettere, equivalente a [^\p{L}] |
\P{N} | Caratteri diversi da numeri, equivalente a [^\p{N}] |
Intervallo | Spiegazione |
{n} | Esattamente n volte |
{n,} | Almeno n volte |
{n,m} | Almeno n volte ma non più di m volte |
{0,m) | Da zero a m volte |
Nella tabella riportata di seguito sono riportati alcuni esempi delle regole di sintassi per espressioni regolari. Per alcuni esempi di utilizzo, fare riferimento a Analisi degli elementi dati utilizzando espressioni regolari.
Modello di dati di espressione regolare | Spiegazione |
---|---|
a | Corrispondenza al carattere "a" |
. | Corrispondenza a qualsiasi carattere |
a+ | Corrispondenza a una stringa con una o più "a" |
a* | Corrispondenza a una stringa con zero o più "a" |
a? | Corrispondenza a zero o un carattere "a" |
a{3} | Corrispondenza a una stringa di tre "a" esatte, vale a dire "aaa" |
a{3,} | Corrispondenza a una stringa con tre o più "a" |
a{2,4} | Corrispondenza a una stringa con un minimo di due e un massimo di quattro ricorrenze di "a" |
[abc] | Corrispondenza a uno qualsiasi dei caratteri "a", "b" o "c" |
[a-zA-Z] | Corrispondenza a uno qualsiasi dei caratteri nell'intervallo compreso tra"a" e "z" o nell'intervallo compreso tra "A" e "Z". L'intervallo di caratteri in corrispondenza è basato su Unicode dei caratteri specificati. |
[^abc] | Corrispondenza a uno qualsiasi dei caratteri, ad eccezione di "a", "b" o "c" |
(ab)+ | Corrispondenza a una o più ripetizioni della stringa "ab" |
(ab)|(cd) | Corrispondenza alle stringhe "ab" o "cd" |