![]() |
Frage zu regulären Ausdrücken
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? |
Re: Frage zu regulären Ausdrücken
Code:
sollte es finden, und die Gruppe mit dem Namen "name" sollte dann das D oder DD oder ... enthalten
(ABC)(?P<name>D+)
dein RegExp muß auch benannte gruppen unterstützen ... |
Re: Frage zu regulären Ausdrücken
Moin Peter,
auf ![]() Vielleicht hilft Dir das schon weiter. |
Re: Frage zu regulären Ausdrücken
Jede Regex Engine, die diesen Namen auch nur annähernd verdient, sollte
![]()
Code:
Zumindest anhand der Informationen der TRegExpr-Page würde ich der Komponente diese Bezeichnung verweigern :zwinker: .
(?<=ABC)D+
|
Re: Frage zu regulären Ausdrücken
Vielen Dank an alle für die Informationen! Ich werde mir mal TPerlRegEx und RegexBuddy anschauen. Vor allem letzteres scheint ja ein sehr nützliches Werkzeug zu sein!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz