Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Tip bezueglich TRegEx und TRichedit, mehrzeilige Suche (https://www.delphipraxis.net/180139-tip-bezueglich-tregex-und-trichedit-mehrzeilige-suche.html)

Gutelo 25. Apr 2014 07:32

Tip bezueglich TRegEx und TRichedit, mehrzeilige Suche
 
Ich habe festgestellt, dass die RegEx Suche (Mode roSingleLine) ueber mehrere Zeilen des RichEdit.Text versagt, wenn man sich den mehrzeiligen Text aus RichEdit.SelText holt. Grund dafuer ist, dass beim Text in RichEdit.SelText die Character #10 nach den Charactern #13 verloren gehen (Zeilenumbruch).

Die #10 Character lassen sich wieder herstellen mit


Delphi-Quellcode:
Str := RichEdit1.SelText;
CorrectedStr := StringReplace(Str,char(#13),char(#13)+char(#10),[rfReplaceAll, rfIgnoreCase]);
Danach einfach RegEx ausfuehren:

Delphi-Quellcode:
  RegExStr := '.*?(\d+).*?';
  RegEx := TRegEx.Create(RegExStr,[roSingleLine,roIgnoreCase]);
  MatchZahl := RegEx.Matches(CorrectedStr);
Vielleicht stolpert ja jemand ueber das gleiche Problem.


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