[PLUTO-help] script in awk!!!

Vittorio Barulli barulli a gemrad.com
Lun 18 Ott 2004 10:55:18 CEST


questa è una lista delle funzioni che puoi usare su $0 (se non mi 
ricordo male è l'insieme di tutta la riga di input, quindi $1 
concatenata con $2... etc)

       gensub(r, s, h [, t])   cerca nella stringa obiettivo t 
corrispondenze con la regular expression r.   Se
                               h  è una stringa che inizia con g o G, 
tutte le corrispondenze con r sono sosti-
                               tuite con s; altrimenti, h è un numero 
che indica la particolare  corrispondenza
                               con r che si vuole sostituire.  Se t non 
è specificata, è usato $0 al suo posto.
                               All'interno del testo di rimpiazzo s si 
può utilizzare la sequenza \n, dove n  è
                               una  cifra tra 1 e 9, per indicare la 
parte di testo che corrisponde all'n-esima
                               sottoespressione tra parentesi.  La 
sequenza \0 rappresenta il  testo  ricoperto
                               dall'intera  espressione,  e  così pure 
il carattere &.  A differenza di sub() e
                               gsub(), la stringa modificata è data come 
risulatato della funzione; l'originale
                               resta inalterata.

       gsub(r, s [, t])        per ogni sottostringa conforme alla 
regular expression r nella stringa t, sosti-
                               tuisce la stringa s, e restituisce il 
numero di sostituzioni.  Se t non è speci-
                               ficata,  usa  $0.   Una  & nel testo di 
rimpiazzo è sostituita dal testo trovato
                               conforme con la regular expression.  Si 
usi  \&  per  indicare  il  carattere  &
                               inteso  letteralmente.   Si veda AWK 
Language Programming per una più ampia dis-
                               cussione circa le regole che riguardano & 
e i "backslash" nel testo di rimpiazzo
                               di sub(), gsub(), e gensub().

       index(s, t)             trova  l'indice posizionale della stringa 
t nella stringa s, o 0 se t non è pre-
                               sente.

       length([s])             la lunghezza della stringa s, oppure la 
lunghezza di $0 se s non è  specificata.

       match(s, r)             trova  la  posizione  in s del tratto che 
si conforma alla regular expression r,
                               oppure 0 se non ci sono conformtà. I 
valori di RSTART ed RLENGTH sono modificati
                               di conseguenza.

       split(s, a [, r])       spezza la stringa s nel vettore a 
utilizzando il metodo di separazione descritto
                               dalla regular expression r, e restituisce 
il numero di campi. Se r è omessa,  il
                               separatore utilizzato è FS.  Il 
precedente contenuto del vettore a è cancellato.
                               La divisione di una stringa in  parti  e  
l'isolamento  dei  campi  nei  record,
                               descritto prima, sono compiuti 
esattamente allo stesso modo.

       sprintf(fmt, expr-list) stampa  (in  modo  fittizio)  expr-list 
secondo il formato fmt, e restituisce la
                               stringa risultante.

       sub(r, s [, t])         come gsub(), ma è sostituita solo la 
prima sottostringa trovata.

       substr(s, i [, n])      restituisce la sottostringa di s di n 
caratteri alpiù che inizia nella posizione
                               i.  Se n è omesso, è usato il resto di s.




More information about the pluto-help mailing list