Espressioni Regolari in SciTE
Obiettivo
Le espressioni regolari possono essere usate per la ricerca di pattern piuttosto che per literal. Per esempio
e' possibile cercare variabili in un file proprieta' di SciTe che compaiono come $(name) con l'espressione regolare:
\$([a-z.]+)
Sostituzioni con espressioni regolari permette trasformazioni complesse con l'uso di espressioni con tag (etichettate).
Per esempio, coppie di numeri separate da ',' possono essere riordinate sostituendo l'espressione regolare:
\([0-9]+\),\([0-9]+\)
con:
\2,\1
Sintassi
-
ogni carattere si riferisce a se stesso, a meno che sia un carattere speciale (metachar): . \ [ ] * + ^ $
-
. corrisponde ad ogni carattere
-
\ corrisponde al carattere che segue, eccetto quando seguito da una parentesi tonda destra o sinistra,
da un digit da 1 a 9 o da una parentesi quadra destra o sinistra.
(vedi [7], [8] and [9]). E' usato come un carattere di escape per tutti i metachar e se stesso.
Quando e' usato in un insieme ([4]), viene trattato come un carattere ordinario.
-
[set] corrisponde ad uno dei caratteri nel set. Se il primo carattere nel set e' "^", corrisponde ad un
carattere NON presente nel set, quindi complementa il set. La scrittura S-E e' usata per specificare un
insieme di caratteri S fino ad E, incluso. I caratteri speciali "]" e "-" non hanno significato speciale
se appaiono come primo carattere nel set. Per esempio: [a-z] corrisponde ad ogni carattere alfabetico minuscolo;
[^]-] corrisponde ad ogni carattere eccetto ] e -;
[^A-Z] ad ogni carattere eccetto i caratteri alfabetici maiuscoli;
[a-zA-Z] ad ogni carattere alfabetico
-
* ogni espressione da [1] a [4], seguite dal carattere di closure (*) corrisponde a zero o piu' match della
espressione.
-
+ come [5], eccetto che corrisponde ad almeno una o piu'.
-
una espressione regolare nella forma da [1] a [10], racchiusa in \(form\) corrisponde a quello a cui
form corrisponde. Racchiudere form in questo modo crea un insieme di tag, usati per [8] e per la
sostituzione di pattern. Le forme con tag sono numerate a partire da 1.
-
\ seguito da un digit da 1 a 9 corrisponde a qualsiasi precedente espressione regolare con tag ([7]) che ha
dato match positivo.
-
\< una espressione regolare che inizia con \< e/o che termina con \> , restringe
il pattern matching all'inizio della parola, e/o alla fine della parola.
Una parola e' definita come una stringa di caratteri che inizia e/o finisce con i caratteri A-Z a-z 0-9 and _.
Deve inoltre essere preceduta e/o seguita da un qualsiasi carattere fuori quelli menzionati.
-
una espressione regolare composta xy dove x e y sono nella forma da [1] a [10] corrisponde
al piu' lungo match di x seguito da un match di y.
-
^ una espressione regolare che inizia con il carattere ^ e/o che termina con il carattere $,
restringe il pattern matching all'inizio della riga, o alla fine della riga.
Negli altri posti del pattern, ^ e $ sono trattati come caratteri ordinari.
Ringraziamenti
La maggior parte della documentazione fu originariamente scritta da Ozan S. Yigit.
Contributi di Neil Hodgson.
Tutti questi documenti sono di dominio pubblico.
|