[PLUTO-help] aiuto con le regex
sabpll a libero.it
sabpll a libero.it
Mer 7 Lug 2004 22:50:26 CEST
Alle 11:46, mercoledì 7 luglio 2004, David ha scritto:
> grep -E '^......$' dizionario.txt | grep -E '[a-z]([a-z])([a-z])\2\1'
> me ne ritorna un po'. Perche` nella prima regex non ha "capito" che doveva
> essere lunga 5 lettere?
Il primo grep seleziona le parole di _sei_ ( 6 ) lettere, non cinque.
> Poi ancora, nel primo "membro" del pipe perche` se avessi messo n punti mi
> avrebbe trovato le parole non di n lettere ma di n-1?
Non capisco; questo non c'entra niente con grep.
Piuttosto, sei sicuro del formanto del file "dizionario.txt"?
Cioè, è composto da parole italiane, una per riga e le righe
sono terminate da LF?
Non è che è righe sono terminate da CR+LF?
In questo caso può essere che CR venga interpretato come
facente parte della parola, da qui il comportamento strano.
> Poi altra domanda che mi ha portato alla necessita` di usare AND:
> Tra le parole ritornate ho alcune tipo ABAAB mentre io voglio che la terza
> e la quarta lettere siano si` uguali fra loro ma diversa dalla prima
In questo caso devi usare due grep in cascata attraverso un pipe,
la prima cerca le stringhe "XABBA" la seconda, con l'opzione -v,
elimina le stringhe "BABBA"
Altrimenti potresti usare sed; non sono sicuro ma può darsi
che non sia più lento.
--
Sabatino
......
Non voglio i mille baci che diede Lesbia a Catullo,
pochi baci vuole chi riesce a contarli.
M. Valerio Marziale
(versione libera)
More information about the pluto-help
mailing list