Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
38.974 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Problem mit regulärem Ausdruck

  Alt 28. Nov 2020, 16:12
Erstmal kommt es drauf an, wass für eine Implementation der Regulären Ausdrücke du hast,
denn da unterscheiden sich einige Dinge Grundlegend, bzw. einige Sachen sind nicht überall möglich.

z.B. die Kommentare im RegEx.
#... wird hier nicht unterstützt, sondern (?#...)
und selbst wenn # als Kommentar ginge, dann fehlt dahinter der Zeilenumbruch (#10, #13#10, bzw. sLineBreak) als Ende des Kommentars, was in deinem "einen" String nicht enthalten ist.
https://regex.sorokin.engineer/de/la....html#comments
Aber hier kanns die Kommentare ja auch einfach ins Pascal/Delphi hier \\ verschieben.
Delphi kennt leider keine MultiLine-Strings, da muß man die Zeilenumbrüche eben selbst machen.

Und dann wird bei einigen Libs mit einem Start-/Ende-Zeichen gearbeitet und dahinter in den RegEx die Modifier.
Wie bei deiner Vorlage /.../x , während Andere das nicht haben (z.B. TRegEx im Delphi), wo die Modifier als Enum in einem eigenen Parameter übergeben werden.
Da hier "Modifier urecognized" als Fehler kommt, müsste für dein TRegExpr in den RegEx-String also sowas mit rein. (in die "neue" Delphi-Implementation Delphi-Referenz durchsuchenTRegEx aber nicht)

Auch Leerzeichen/Zeilenumbrüche, da kommt es auf die Konfiguration/Modifierer drauf an, ob sie "ignoriert" oder als "Suchstring" mit behandelt werden.
In den Delphiimplementationen ist eigentlich Letzteres meistens der Standardfall, außer man gibt den entsprechenden Modifier an.
Hier ist es der Modifier x (eXtended).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (28. Nov 2020 um 16:25 Uhr)
  Mit Zitat antworten Zitat