Espressioni regolari per abbinare un elemento XML

May 22

Le espressioni regolari sono un potente metodo utilizzato per analizzare il testo; questo include trovare elementi XML nel codice. Quando si dispone in particolare di grandi file di qualsiasi tipo, la ricerca di testo all'interno di essi manualmente può essere estremamente che richiede tempo. Espressioni regolari consentono di automatizzare il processo, in linguaggi di scripting come Perl, per risparmiare tempo. Le espressioni regolari non sono limitati a Perl, ma ogni lingua che li implementa ha una sintassi leggermente diversa.

lineare

Crea l'espressione regolare. Per esempio, se il vostro elemento XML è stato "libreria", allora si conosce il suo tag di apertura è "<bookstore>" e per abbinare, la vostra espressione regolare sarebbe simile a questa:

<Bookstore>

Dal momento che la partita deve essere esatto, l'espressione regolare non ha bisogno di ospitare per le variabili o qualcosa fuori dal comune diversi.

accoppiati Tag

Creare una espressione regolare che corrisponde sia l'inizio e fine tag del vostro elemento XML. Dal momento che stiamo ancora usando "libreria" qui, l'espressione regolare sarebbe simile a questa:

<Bookstore> | </ bookstore>

Ciò corrisponderà sia l'apertura e chiusura tag del vostro elemento.

Vari Tag

Creare una espressione regolare che corrisponderà gli elementi XML che condividono nomi simili. Se si ha un certo numero di elementi "libreria" in modo che corrisponda, l'espressione regolare potrebbe essere la seguente:

<Bookstore [0-9] *>

Ciò corrisponderà tutti gli elementi di apertura "libreria", compresi quelli che hanno numeri dopo di loro. Se si voleva abbinare anche i tag finali, si potrebbe ampliare l'espressione:

<bookstore [0-9]> | </ bookstore [0-9]>

Tag Vague

Creare una espressione regolare che corrisponderà alcun elemento XML con un carattere di sottolineatura. E 'una buona idea per fare elementi descrittivi utilizzando il carattere "_" se potete. L'espressione sarebbe simile a questa:

<[az] + [0-9] _ [az] + [0-9]>

Questa espressione corrisponderà a qualsiasi elemento XML che ha un carattere di sottolineatura, così come tutti i numeri seguendo sia il prefisso o suffisso. Se si voleva fare una espressione regolare per trovare qualsiasi elemento XML a tutti, è possibile utilizzare:

<[Az] + [0-9] *>

Questa espressione corrisponderà a qualsiasi elemento XML, compresi quelli con i numeri. Non c'è modo di distinguere tra gli elementi XML e altri costruita nel tag tuttavia, dal momento che un elemento XML può essere chiamato tutto ciò che non inizia con un numero. Sarà necessario creare una più specifica espressione regolare per trovare questi tag. Questo può essere ottenuto se si utilizza uno schema di denominazione, come l'esempio di sottolineatura in precedenza, con tutti i tuoi elementi XML.