Re: [gnu sed] Inkonsistentes(?) escapen
- From: Alexander Bartolich <alexander.bartolich@xxxxxx>
- Date: Thu, 5 Jan 2006 18:12:48 +0100
begin followup to Martin Ammermüller:
> Welches Zeichen wann wie oft bei sed regex Mustern escaped werden
> muss um den gewünschten Effekt zu haben ist mir irgendwie schleierhaft.
> Das krieg' ich meist nur durch probieren hin.
In einer GNU-Umgebung sieht das so aus:
man 7 regex
# Regular expressions (''RE''s), as defined in POSIX 1003.2, come in two
# forms: modern REs (roughly those of egrep; 1003.2 calls these
# ''extended'' REs) and obsolete REs (roughly those of ed(1); 1003.2
# ''basic'' REs).
man sed
# POSIX.2 BREs should be supported,
man grep
# -E, --extended-regexp
# Interpret PATTERN as an extended regular expression (see below).
Das Kommando "egrep" entspricht "grep -E".
Und dann gibt es da noch was:
man perlre
# perlre - Perl regular expressions
Egal.
Die GNU-Implementierung von BRE kennt auch alle Elemente von ERE,
nur werden sie mit Rückwärtsschrägstrich geschrieben. Bei anderen
Implementierungen von BRE fehlen diese Elemente u. U. einfach.
> [...]
> sed -e 's/^Priority:.*\|^Section:.*//g' datei
>
> funktioniert einwandfrei (bis auf das leider nicht gematchte newline).
Dann nimm halt 'd' statt 's'.
sed -e '/^\(Priority\|Section\):/d' datei
> [...]
> Warum dürfen weder "^", "." noch "*" escaped werden,
Die gibt es bereits in den BRE.
> während "|" und "+" escaped werden müssen?
Das sind Elemente der ERE, die in der GNU-Implementierung der BRE mit
Rückwärtsschrägstrich verfügbar sind.
--
Es gibt keine Tyrannei im Zustand der Verwirrung.
.
- Follow-Ups:
- Re: [gnu sed] Inkonsistentes(?) escapen
- From: Martin Ammermüller
- Re: [gnu sed] Inkonsistentes(?) escapen
- References:
- [gnu sed] Inkonsistentes(?) escapen
- From: Martin Ammermüller
- [gnu sed] Inkonsistentes(?) escapen
- Prev by Date: Re: Bash-Prompt, das nicht zu lang wird
- Next by Date: Re: sort nummeric problem
- Previous by thread: [gnu sed] Inkonsistentes(?) escapen
- Next by thread: Re: [gnu sed] Inkonsistentes(?) escapen
- Index(es):
Relevant Pages
|