Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.451 Beiträge
 
Delphi 10.4 Sydney
 
#1

Frage zu regulären Ausdrücken

  Alt 16. Aug 2007, 13:50
Hallo, ich habe eine Frage zu regulären Ausdrücken (ich verwende die Delphi-Implementierung TRegExpr, die auf der allgemein üblichen Perl-Syntax aufbaut):

Vereinfachtes Beispiel: Der reguläre Ausdruck "D+" soll in einer Zeichenkette die Zeichenfolge "D" oder "DD" oder "DDD" usw. nur dann finden, wenn genau davor genau die Zeichenfolge "ABC" steht. D.h. im Suchstring "ABCDDD" soll "DDD" gefunden werden, in "CBADDD" soll "DDD" aber NICHT gefunden werden!

Natürlich kann ich mit dem regulären Ausdruck "ABCD+" die gesamte Zeichenkette "ABCDDD" und dann in dieser in einem nächsten Schritt mit "D+" das "DDD" finden.

Mich würde aber grundsätzlich interessieren, ob es bei regulären Ausdrücken möglich ist, im regulären Ausdruck selbst einen Ausdrucksteil so zu definieren, dass dieser nur als BEDINGUNG funktioniert, d.h. dass der Bedingungsteil zwar zutreffen muss, aber in der gefundenen Zeichenkette nicht enthalten ist.
Wenn man also im regulären Ausdruck "ABCD+" das "ABC" irgendwie als Bedingung definieren könnte, so würde dann damit im Suchstring "ABCDDD" tatsächlich nur die Zeichenkette "DDD" gefunden. Ist das irgendwie möglich?
  Mit Zitat antworten Zitat