Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Regular Expression in GExperts -> Stringkostanten, die nic.. (https://www.delphipraxis.net/100830-regular-expression-gexperts-stringkostanten-die-nic.html)

bernau 4. Okt 2007 13:16


Regular Expression in GExperts -> Stringkostanten, die ni
 
Hi,

ich möchte meinen Quelltext durchsuchen. Und zwar nach Stringkonstanten, die nicht mit einer Zahl beginnen.

Beispiel:

irgendwo im Quelltext verstreut sind folgende Zeilen:

Delphi-Quellcode:
einString = 'Hallo';
EineFunktion('Ein String soll gefunden werden');
NochEineFunktion('123 Das nicht finden');
XXX='1) Das nicht finden';
Mit der Grep Funktion von GExperts und Regular Expression möchte ich die ersten beiden Zeilen finden, aber die zweiten beiden Zeilen nicht.

Habe noch nie was mit RegEx zu tun gehabt und alle Versuche mit Beschreibungen und Tutorials etwas hinzubekommen sind fehlgeschlagen. (Vieleicht habe ich auch nur die verkehrten Tutorials gehabt)

s-off 5. Okt 2007 12:02

Re: Regular Expression in GExperts -> Stringkostanten, di
 
Hallo,

und wie lassen sich Zeile 2 und 3 unterscheiden?

In der aktuellen Fassung wird nicht die TSearcher aus der RegExpr.pas genutzt, sondern die aus der GX_Search.pas - und die hat meiner Meinung nach nicht viel mit Regulären Ausdrücken zu tun.... frag mich nicht, warum das so ist - finde es auch traurig, bekomme aber die RegExpr.pas net eingebunden :cry:

Edit: Sorry, das mit 'Und zwar nach Stringkonstanten, die nicht mit einer Zahl beginnen. ' habe ich überlesen.

bernau 5. Okt 2007 13:59

Re: Regular Expression in GExperts -> Stringkostanten, di
 
Zitat:

Zitat von s-off
In der aktuellen Fassung wird nicht die TSearcher aus der RegExpr.pas genutzt, sondern die aus der GX_Search.pas - und die hat meiner Meinung nach nicht viel mit Regulären Ausdrücken zu tun.... frag mich nicht, warum das so ist - finde es auch traurig, bekomme aber die RegExpr.pas net eingebunden :cry:


Tja,

das habe ich dann auch gemerkt, dachdem ich mich etwas mit Standardwerken über RegEx beschäftigt habe.

Habe mir aber mit folgendem ganz einfachen Ausdruck geholfen.

Delphi-Quellcode:
'[a-z]
Damit habe ich das Meiste gefunden.

Phistev 5. Okt 2007 14:57

Re: Regular Expression in GExperts -> Stringkostanten, di
 
Zitat:

Zitat von bernau
Hi,

ich möchte meinen Quelltext durchsuchen. Und zwar nach Stringkonstanten, die nicht mit einer Zahl beginnen.

der Regex, der dem am nächsten kommt wäre
Code:
'[^0-9]
bzw.
Code:
('[^0-9'][^']*')
(Die Klammern hier stehen für eine capturing group)

s-off 5. Okt 2007 14:59

Re: Regular Expression in GExperts -> Stringkostanten, di
 
Der TSearcher aus der GX_SEARCH erkennt das ^ aber leider nicht als Ausschlußzeichen an, womit diese Variante rausfällt.
Und das Wildcard-Zeichen (*) kennt er auch nicht.
Und Gruppierungen schonmal gar nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 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