Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#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).
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

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