Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi StringReplace mit Anhang (https://www.delphipraxis.net/56545-stringreplace-mit-anhang.html)

Grolle 7. Nov 2005 16:39


StringReplace mit Anhang
 
Hi!
Ich habe folgendes Problem:
Delphi-Quellcode:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text,'ursprünglicher String','Ersatzstring ",[rfReplaceAll]); //
Das sieht dann ja so aus: Ersatzstring "hier steht ne Nummer " <- Anführungszeichen sollen einfach angehängt werden. Habe
schon nen bischen gefrickelt, aber hat nicht so wirklich geklappt :?
Viele Grüße

tommie-lie 7. Nov 2005 17:00

Re: StringReplace mit Anhang
 
:gruebel:
So?
Delphi-Quellcode:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text,'ursprünglicher String','Ersatzstring "',[rfReplaceAll]) + IntToStr(nummer) + '"';
Oder habe ich das Problem nicht verstanden? :-?

Grolle 7. Nov 2005 17:50

Re: StringReplace mit Anhang
 
Hi!
Die Nummer weiß ich nicht (wird ausgelesen). Die Nummer steht hinter dem String der ersetzt wird.
Im Prinzip soll das letzte Zeichen in der Zeile ein " sein.

tommie-lie 7. Nov 2005 18:00

Re: StringReplace mit Anhang
 
So?
Delphi-Quellcode:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text,'ursprünglicher String','Ersatzstring "' + IntToStr(nummer) + '"'',[rfReplaceAll]);
Falls nicht habe ich es immer noch nicht verstanden und es bedarf eines konkreten Beispiels (Zeile vorher -> Zeile nachher), um es mir verständlich zu machen.

Grolle 7. Nov 2005 19:05

Re: StringReplace mit Anhang
 
Hi!
Ich versuchs nochmal. Ich bin mir allerdings nicht sicher, ob das mit StringReplace so überhaupt klappt.
So kommt ein String von der Schnittstelle:
IrgendwasanText234567890

So wird er mit StringReplace umgewandelt (nur der Text!!!):
Textgeändert"234567890

So soll es aussehen:
Textgeändert"234567890" <- Anführungszeichen angehängt


Ich würde da ungern noch ne Schleife anhängen, welche das letzte Zeichen in der Zeile anhängt.
Vielleicht gibts da noch ne Möglichkeit :gruebel:
Greetz

tommie-lie 7. Nov 2005 19:14

Re: StringReplace mit Anhang
 
Ahhh! :coder2:

Delphi-Quellcode:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text, 'IrgendwasanText', 'Textgeändert"', [rfReplaceAll]) + '"';

malo 7. Nov 2005 19:15

Re: StringReplace mit Anhang
 
Ich würde es eher so machen:

Delphi-Quellcode:
function ReplaceThisString(s: string): string;
var
  i: integer;
begin
  for i := 1 to length(s) do
  begin
    if s[i] in ['0', '1', '2', '3', '4', '5', '5', '6', '7', '8', '9'] then
    begin
      insert(s, '"', i);
      break;
    end;
  s := s + '"';
  end;
end;
UNgetestet ;)


edit: :oops: Hab vergessen den Text zu ändern. Eventuell mal vorher StringReplace drüber laufen lassen, dann passt das schon :mrgreen:

//edit2: Unsinn entfernt.

tommie-lie 7. Nov 2005 19:23

Re: StringReplace mit Anhang
 
Zitat:

Zitat von malo
Ich würde es eher so machen:

Damit kommst du nur nicht weit :mrgreen:
Zitat:

Zitat von malo
UNgetestet ;)

Ja, ganz offensichtlich *g*

Deine Funktion hat keinen Rückgabewert und macht eigentlich etwas, was nicht verlangt ist, bzw etwas, was auch sehr viel kürzer geht.

Grolle 7. Nov 2005 20:34

Re: StringReplace mit Anhang
 
Hi!
Delphi-Quellcode:
Memo1.Lines.Text := StringReplace(Memo1.Lines.Text, 'IrgendwasanText', 'Textgeändert"', [rfReplaceAll]) + '"';
Das klappt auch so nicht. In dem Text sind mehrere StringReplace-Routinen.
wenn ich das so wie bei dem obigen Source mache wird einfach ein " ans Text-
ende angehängt. Es soll aber ans Zeilenende.

malo 7. Nov 2005 20:36

Re: StringReplace mit Anhang
 
Zitat:

Zitat von tommie-lie
Deine Funktion hat keinen Rückgabewert

Ich wusste, ich hab was vergessen :mrgreen:
Zitat:

und macht eigentlich etwas, was nicht verlangt ist, bzw etwas, was auch sehr viel kürzer geht.
Liegt wohl daran, dass ich das Problem an der falschen Stelle gesehen hab. Geschrieben hab ich meinen Post, bevor deiner kam. Und den Quelltext hab ich auch nur schnell hier eingetippt... :?

Aber das nächste mal sollte ich mir wohl genauer Die Fragestellung durchlesen. Vielleicht versteh ich dann auch, was gemeint ist, und wie ich den Quellcode-Ansatz aufzufassen hab (hab mich da nämlich auch verlesen...) ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:33 Uhr.
Seite 1 von 2  1 2      

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