[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

maledetto awk




usa le funzioni match(),  sub() e substr  di awk e il RS per definire i 
blocchi di righe da elaborare. 

Comunque, Awk fa un po' schifo come pattern-matching. E' buono per formati 
tabulati, ma per pattern matching complicati e' una pena. (Se sei fortunato, 
ti risponde /dev/null che e' bravissimo.) 

Sed e' molto meglio come pattern-matching e sostituzione e Perl unisce il 
pattern-matching di sed (e lo estende) alla struttura di scripting di awk, 
che ti permette di salvare i pattern in variabili e riusarle, quello che 
serve a te. 

Perl si impara sull'autobus leggendo "Learning Perl", collana O'Reilly, per 
la tua domanda il cap 7 potrebbe bastare.  

Detto questo, (che nun te serve a gnente!) proverei le caratteristiche 
multilinea di sed, per isolare i blocchi, e i pattern-matching all'interno 
del blocco. 

/Name="\([a-zA-Z0-9].*\)"/{
s//\1/
} 
N
etcetera...Usa N,H,P,D per le caratteristiche multilinea. 

ciao e scusa se non ti ho dato una soluzione...
a. 


-- 

alberto. 



Reply to: