![]() |
Regulärer Ausdruck funktioniert nicht unter .NET
Hallo,
ich beschäftige mich derzeit mit dem System.Text.RegularExpressions Namespace des .NET Frameworks. Laut Handbuch wird eine Ähnliche Funktionialität wie in "Perl 5" geboten. Jedoch wird der Modifier "?R" für Rekursion nicht erkannt und eine ArgumentException Exception beim Erstellen der RegEx Klasse ausgelöst. Der gesamte Ausdruck sieht wie folgt aus:
Delphi-Quellcode:
Kann ich die .NET Regexes dazu "überrden", den Modifier für Rekursion zu akzeptieren?
// C# (mit zusätzlichen Escape-Sequenzen)
ClassBodyRegEx = new Regex("\\{(((?>[^{}]+)|(?R))*)\\}", RegexOptions.Singleline); // Delphi Win32 (benutzt externe Perl5-Kompatible RegEx Library) ClassBodyRegEx := RegexCreate('\{(((?>[^{}]+)|(?R))*)\}', [rcoSingleLine]); Wenn nein, wie kann ich den Ausdruck ohne Rekursion am besten Schreiben? mfG mmirage228 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 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 by Thomas Breitkreuz