|
Nella descrizione del contenuto di un elemento, dopo ogni
singolo elemento oppure dopo un gruppo di elementi racchiuso
tra parentesi, può comparire uno dei caratteri speciali
(che chiamiamo operatori), elencati in tabella
1. Questi caratteri indicano la ripetione di un elemento
o il loro rapporto con altri elementi. Consideriamo questi
operatori uno alla volta.
| Termine |
Significato |
| , |
occorrenze in sequenza |
| | |
occorrenze in alternativa |
| ? |
occorrenza opzionale |
| + |
occorrenza ripetuta una o più volte |
| * |
occorrenza ripetuta zero o più volte |
La virgola (,) indica la concatenazione di
elementi. Per cui A,B indica che il tag B
può comparire solamente dopo il tag A.
La barra (|), che si chiama alternatore,
indica le possibilità alternative di comparsa di elementi. Per cui
A|B indica che può comparire il tag A
oppure il tab B.
Il punto interrogativo (?) indica che il tag (o
il ragruppamento) che lo precede è opzionale. Per cui
A? indica che A può comparire oppure no,
mentre con (A|B)? le possibilità sono: compare
A, compare B oppure non ne compare nessuno
di tutti e due.
Il più (+) indica l'iterazione del tag o della
sequenza che lo precede. Nel caso più semplice,
A+ indica che A può comparire una volta,
due volte, tre volte eccetera. Comunque sempre almeno una
volta. Se si considera una sequenza, (A|B)+ può
comparire una o più volte. L'iteratore indica le sequenze
(A|B), (A|B),(A|B),
(A|B),(A|B),(A|B), e cosi via. Applicando a sua
volta il significato dell'alternatore, abbiamo che sono
possibili sequenze come A, B, AA,
AB, BA e così via.
L'asterisco infine è simile al +, con la
differenza che è ammesso il caso in cui l'elemento o
l'intera sequenza appare 0 volte (cioè non c'è), mentre
con l'operatore precedente questo caso viene escluso
(l'elemento compare sempre almeno una volta).
|