Originariamente inviato da Malyftw
come scritto nel topic, il mio problema è controllare che una stringa corrisponda a certe caratteristiche.
Piu precisamente, la stringa in questione è il nome di una directory, e mi serve che inizi con la / e termini senza /
Urka, la mia prima regexp con AWK, sono contentissimo!
codice:
$ echo "/path/" | awk '/^\/.*[^\/]$/ {print $1}'
Se non ti piace questa soluzione (stampa la riga argomento di echo se e` OK, non stampa nulla altrimenti), penso tu possa
riciclare la regexp come preferisci

Vabbeh, sull'onda dell'entusiasmo spiego anche la regexp:
codice:
/^\/.*[^\/]$/
La regex dev'essere racchiusa tra due caratteri di '/'

Significa:
"qualsiasi stringa che inizia per '/', contiene un numero qualsiasi di caratteri e non termina per '/'"

E` composta da tre elementi:
codice:
^\/
ovvero, "inizia per '/'". Ho aggiunto l'escape '\' per non far interpretare il carattere che delimita l'inzio della stringa per delimitatore della regexp

codice:
.*
ovvero, "contiene un numero qualsiasi di caratteri"

codice:
[^\/]$
ovvero, "non finisce per '/'", con le stesse considerazioni suddette per l'escape.

Per spiegazioni migliori e piu` approfondite,
http://www.gnu.org/software/gawk/man...xp%20Operators