[linux-l] Re: Regex Frage

JSC belug at jsc.no-ip.org
Fr Feb 17 18:27:37 CET 2006


On Fri, Feb 17, 2006 at 04:50:24PM +0100, Rocco Rutte wrote:
> * JSC <belug at jsc.no-ip.org>:
> 
> >ich krieg hier noch nen knoten in den kopf. ich brauche EINE regular
> >expression, die "def" findet, aber nicht "abcdef".
> 
> >geht sowas? kann jemand ein beispiel geben, wie das pattern als regex
> >und extended regex aussieht?
> 
> Etwas explizit _nicht_ zu matchen ist relativ kompliziert.
> 
> Wenn in jeder Zeile vor dem Match auf 'def' mindestens noch 3 Zeichen 
> stehen:
> 
>    '[^a][^b][^c]def'
> 
funktioniert ja nicht, das macht mir ja den knoten in den kopf ...

$ echo 123def | grep '[^a][^b][^c]def'
123def
$ echo 123bcdef | grep '[^a][^b][^c]def'
$

mit "[^c]def" funktioniert es, ab "[^b][^c]def" aber schon nicht mehr.

> Ansonsten wird es noch beliebig kompliziert, weil [^a] auf ein 
> Nicht-'a'-Zeichen matcht... aber es muss halt ein Zeichen da sein, was 
> bei Input von 'bdef' nicht der Fall ist...
> 
diese einschraenkung wuerde ich in kauf nehmen.

bye
Jens



Mehr Informationen über die Mailingliste linux-l