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

Re: grep



Hallo Klaus Becker, hallo auch an alle anderen

Donnerstag, 10. August 2006 17:01 - Klaus Becker wrote:
> Am Donnerstag 10 August 2006 15:46 schrieb Matthias Houdek:
> > Hallo Klaus Becker, hallo auch an alle anderen
> >
> > Donnerstag, 10. August 2006 15:29 - Klaus Becker wrote:
> > > Hallo,
> > >
> > > noch ne grep-Frage. In einer Datei befinden sich an diversen
> > > Stellen die Namen der Wochentage von Montag bis Freitag. Ist es
> > > möglich, diese Worte mit einem einzigen Befehl aus der Datei zu
> > > entfernen?
> >
> > Grep findet nur, aber mit sed und einem entsprechenden RegEx sollte
> > es gehen, am einfachsten wäre wohl:
>
> klar, ich meinte sed, sorry
>
> > \b(Montag|Dienstag|Mittwoch|...)\b
>
> Es ist ein französischer Text (aber das juckt sed sicher wenig):
>
> $ sed '\b(Lundi|Mardi|Mercredi|Jeudi|Vendredi)\b'
> sed: -e Ausdruck #1, Zeichen 41: unterminated address regex

Das da oben ist nur der RegEx, den musst du noch in den Editorbefehl 
einpassen. Außerdem versteht sed IIRC nicht die erweiterte Syntax, also 
bleiben die Wortbegrenzungen "\b" weg. Das hat den Nachteil, dass die 
Wochentage auch als Teil eines längeren Wortes gelöscht werden. Wenn du 
sowas im Text hast, müsstest du die möglichen Wortbegrenzer händisch 
davor und danach setzen (Leerzeichen, Klammer, Punkt, Semikolon, 
Komma, ...). Im Zweifel frag einfach noch mal nach.

sed 's/(Lundi|Mardi|Mercredi|Jeudi|Vendredi)//g' datei

sollte dir den veränderten Text auf den Screen schreiben. Du kannst die 
Ausgabe ja dann in eine neue Datei umleiten, ggf. auch noch die alte 
löschen und die neue auf die alte umbenennen.

-- 
Gruß
                MaxX

Bitte beachten: Diese Mailadresse nimmt nur Listenmails entgegen.
Für PM bitte den Empfänger gegen den Namen in der Sig tauschen.



Reply to: