Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi String RegEx solide erstellen. (https://www.delphipraxis.net/188275-string-regex-solide-erstellen.html)

ScharfeMietze 16. Feb 2016 10:44

String RegEx solide erstellen.
 
Ich habe eine Datenstringlist, welche zur Laufzeit durch Usereingaben befüllt wird.
Diese Stringlist möchte ich nun als RegexPattern durchlaufen lassen.

Die Datenstringlist kann z.B. mit
"Heute ist es 23 Grad warm\kalt. ja/nein?"
oder
"5*[3+d]="
befüllt werden.
Das ist als Pattern natürlich gänzlich ungeeignet.

Daher die Frage ob es eine function gibt die einen solchen String Regex solide macht in dem sie die entsprechenden stellen entsprechend Maskiert und z.B.
"5\*\[3\+d]="
ausgibt

Der schöne Günther 16. Feb 2016 11:07

AW: String RegEx solide erstellen.
 
Heute ist mir nichts zu peinlich, deshalb die Frage: Was ist hier im Zusammenhang mit regulären Ausdrücken "solide"? Ich kenne da nichts.

Oder meinst du einfach nur, wegen "5*[3+d]=" -> "5\*\[3\+d]=" das Maskieren von Regex-Steuerzeichen?

ScharfeMietze 16. Feb 2016 11:22

AW: String RegEx solide erstellen.
 
Ja das meine ich ich.
Maskieren,Escapen.
Ist nicht ganz ohne.

himitsu 16. Feb 2016 11:33

AW: String RegEx solide erstellen.
 
Eine "ordentliche" RegEx-Lib sollte auch eine Escape-Funktion bieten.

Wenn einem alles egal ist und man 1.000.000% auf Nummer sicher gehn will, dann einfach vor jedem einzelnen Zeichen einen \ einfügen. :roll:

Der schöne Günther 16. Feb 2016 11:37

AW: String RegEx solide erstellen.
 
Potsdonner, du hast Recht, da gibt es schon was:

http://docwiki.embarcadero.com/Libra....TRegEx.Escape

ScharfeMietze 16. Feb 2016 12:09

AW: String RegEx solide erstellen.
 
himitsu

Geht auch nicht weil sonst würde
'daher' zu '\d\a\h\e\r'
ein
\d
macht das ganze dann auch wieder zunichte.

Das Beispiel vom schönen Günter schau ich mir gleich mal an :)

Gruß
SM;)

Der schöne Günther 16. Feb 2016 12:23

AW: String RegEx solide erstellen.
 
Bei abenteuerlichen Unicode-Zeichen würde ich noch hier schauen:

http://www.regular-expressions.info/unicode.html

Hier scheint es, je nach Library, verschiedene Syntax-Ansätze zu geben wie man das macht.

ScharfeMietze 16. Feb 2016 12:52

AW: String RegEx solide erstellen.
 
Wichtig ist mir das die Delphi Steuerzeichen richtig behandelt werden.
Oder auch die Pipe '|' oder '^' hätte ich total vergessen.

Gruß
SM;)

Ps: A bissl peinlich ist es trotzdem da die fuction ständig beim Codevervollständigen auftaucht.
Asche auf mein Haupt.

Ist aber auch nicht das Gelbe vom Ei , ein '/' z.B. wird nicht beachtet.

himitsu 16. Feb 2016 13:15

AW: String RegEx solide erstellen.
 
/ ist auch kein Steuerzeichen in Expressions.


Stimmt, die Dinger hab ich ganz vergessen. :oops:
OK, dann vor alles, was nicht Alphanumerisch ist. :stupid:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz