DocLinux 9 - 9

# Le espressioni regolari

- Per selezionare file nella shell o per scegliere le righe con il comando grep ho precedentemente parlato dell'uso dei caratteri jolly come * e ?
- In realtà avrei dovuto parlare più precisamente di espressioni regolari
- Un'espressione regolare è un modo per indicare un insieme di frasi che hanno caratteristiche comuni
- Per indicare le caratteristiche comuni potremo ad esempio indicare le parti che non debbono cambiare, che verranno scritte nell'espressione come dovranno comaprire.
- Potremo racchiudere delle parti tra parentesi tonde, dette subespressioni
- Le subespressioni potranno essere riutilizzate nella frase da sostituirecome nel comando s/<espressione regolare>/<frase da sostituire>/ di sed o vi, in un comando si sostituzione, verranno indicate come <barra rovesciata>1, <barra rovesciata>2 ...
- Possiamo anche indicare caratteri che possano assumere solo certi valori, indicando liste di caratteri racchiusi tra parentesi quadre
- Se la lista di caratteri inizia con ^, corrisponderà a caratteri che nonappartengonoappartenggono alla lista stessa.
- Se un carattere, una lista o una subespressione è seguita da ?, essa potrà comparire o meno nella frase trovata.
- Se un carattere, una lista o una subespressione è seguita da *, essa potrà non comparire, comparire una volta o più volte nella frase trovata.
- Il carattere . (punto) indica un qualunque carattere. Se nella nell'espressione regolare deve comparire un carattere che ha un significato particolare per le espressioni regolari lo faremo precedere da <barra rovesciata>.
- Per maggiori informazioni sulle espressioni regolari consultare man regex o man perlre per l'implementazione del linguaggio Perl.

© Ing. Stefano Salvi - released under FDL licence