Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Problem/Frage zu StringReplace (https://www.delphipraxis.net/49297-problem-frage-zu-stringreplace.html)

torud 8. Jul 2005 13:57


Problem/Frage zu StringReplace
 
Hallo Leute!

Ich habe das Problem, dass ich mit StringReplace leider nicht den gewünschten Erfolg erziele. Was mache ich? Ich habe eine Liste voller HTML-Dateien. Diese öffne ich nacheinander und will eigentlich, dass ein SucheText durch einen ErsatzText ersetzt wird.

Delphi-Quellcode:
MyInhalt:=TStringlist.Create;
MyInhalt.LoadFromFile('1.html') //dummy
MyInhalt.Text:=StringReplace(MyInhalt.Text,ed_search.Text,ed_replace.Text,[rfreplaceall]);
MyInhalt.SaveToFile('1.html'):
MyInhalt.Free;
Will ich also aus <html> <Html> machen, klappt das leider nur, wenn sich exakt dieser String in einer einzelnen Zeile befindet und nicht irgendwo eingebettet ist.

So

<html>
<head>

Klappts, und so
<dummy><html><head>

Nicht. Warum nur? Ich habe es auch schon so gemacht, dass ich die Dateien zeilenweisen abgearbeitet habe. Und trotzdem hats nicht geholfen.

Nalincah 8. Jul 2005 14:34

Re: Problem/Frage zu StringReplace
 
probiers mal mit "rfIgnoreCase"

Nalincah 8. Jul 2005 14:36

Re: Problem/Frage zu StringReplace
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bei mir klappt's

torud 8. Jul 2005 15:19

Re: Problem/Frage zu StringReplace
 
Danke für das Beispiel!

Ich frage mich nur, was Du anders machst, ausser das Du Controls benutzt. Dein Beispiel war bei mir OK.

Ich werde also nochmal meinen Code durchforsten, bin aber etwas pessimistisch gestimmt.

Ich melde mich wieder, wenn ich den Fehler nicht finden kann...

Kann es daran liegen, dass ich keine Edits benutzt habe, wo man die Texte eingeben kann, sondern Memos?

Ich teste es gleich mal mit Deinem Tool

Nalincah 11. Jul 2005 07:41

Re: Problem/Frage zu StringReplace
 
Kann gut sein...Vielleicht nimmst du den Zeilenumbruch (#13#10) noch mit...Probier mal ein

Delphi-Quellcode:
StringReplace(trim(Memo1.Text), ....)

torud 11. Jul 2005 08:03

Re: Problem/Frage zu StringReplace
 
Ja, das scheint es gewesen zu sein. Scheint aber ein Bug oder ein "special" Feature zu sein, zumindestens bei der Synedit-Komponente. Da hat es nie geklappt. Nachdem ich dann eine normale Memo genommen habe, ging es sofort.

Danke für die Tipps!


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