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

Re: [OT] Regular expression



On Tuesday 09 January 2007 01:46, David Haller wrote:
> Hallo,
>
> Am Mon, 08 Jan 2007, Christian Brabandt schrieb:
> >Gebhard Dettmar schrieb am Montag, den 08. Januar 2007:
> >> Wie geht das denn in awk? (werd da nicht schlau aus der Manpage)
> >
> >Außer kleineren Scripten hab ich noch nie was mit awk gemacht. Nach
> >Studium der Manpage sollte folgendes funktionieren:
> >
> >,----[ cat format.awk ]-
> >
> >| {
> >|     if($0~"2006\n")
> >|         {
> >|         $0=$0 getline
> >|         }
> >|     print $0
> >| }
> >
> >`----
> >
> >Aufruf mit awk -f script.awk <datei>
>
> Komplizierter als nötig ;) Du kannst direkt in der Adresse
> selektieren. Du verwendest das leere Muster, d.h. der Block wird auf
> jede Zeile angewendet.
>
Verstehe ich nicht: liegt es nicht daran, dass if($0~"2006\n") nichts 
matcht? Das hab ich auch nicht kapiert, wie man das Newline da reinbringt: 
ich hab in der Manpage nach Substitution geguckt und sub(r,s) und 
gsub(r,s) gefunden - 
awk '{ gsub(2006\n, "2006") ; print }' <datei> bringt:
1: unexpected character '\' 
Heißt das, dass es mit direktem Replacement nicht geht (also Newline mit 
2006)?

> [... cool stuff ...]
>
> HTH,

Allerdings :-)

Dank und Gruß,
Gebhard

-- 
Artistic ventures highlighted.  Rob a museum.



Reply to: