AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

StringReplace geht nicht

Ein Thema von Hansa · begonnen am 23. Feb 2014 · letzter Beitrag vom 24. Feb 2014
Antwort Antwort
Seite 1 von 3  1 23   
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

StringReplace geht nicht

  Alt 23. Feb 2014, 13:43
Delphi-Version: 5
Moin,

kann mir mal einer sagen, was hier falsch ist?

Delphi-Quellcode:
sl.LoadFromFile ('TEST');
StringReplace (sl.Text,'5','',[rfReplaceAll]);
ShowMessage(sl.text);
An dem sl.Text ändert sich absolut nichts. Die 5 ist nach wie vor da drin.
Gruß
Hansa
  Mit Zitat antworten Zitat
silver-moon-2000

Registriert seit: 18. Feb 2007
Ort: Schweinfurt
170 Beiträge
 
Delphi XE Professional
 
#2

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 13:46
Moin,

kann mir mal einer sagen, was hier falsch ist?

Delphi-Quellcode:
sl.LoadFromFile ('TEST');
StringReplace (sl.Text,'5','',[rfReplaceAll]);
ShowMessage(sl.text);
An dem sl.Text ändert sich absolut nichts. Die 5 ist nach wie vor da drin.
Probier's mal so:
SL.Text := StringReplace (sl.Text,'5','',[rfReplaceAll]);
Tobias
Bitte nicht hauen , ich weiß es nicht besser
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 15:36
StringReplace ist eine Function und liefert den geänderten String in Result zurück.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.367 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 16:38
Mal ganz ehrlich: nach 12 Jahren Forenzugehörigkeit sollte man die F1-Taste aber bedienen können.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 16:53
Thx,

tja das kommt davon. StrToFloat (StringReplace(... Wenn man sich da nur das StrReplace rauszieht, ohne drüber nachzudenken, was der Rest wohl zu bedeuten hat.

Wie heisst noch der Compiler-Schalter, um solches Verhalten abzustellen ? Dchlimmer ist allerings, dasss mich das StringReplace sowieso nichts nützt. Es müssen ca. 20 verschiedene Zeichen entfrernt werden, nicht nur eins. Gibts noch was in der Richtung oder muss ich das Zeichen für Zeichen durchgehen ?
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#6

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 16:54
Ich wünsche mir ja schon seit langem ein Schlüsselwort in Delphi mit dem man signalisieren kann dass das Ergebnis einer Funktion zwingend entgegengenommen werden muss.
Delphi-Quellcode:
function StringReplace(const S, OldStr, NewStr: string; Flags: TReplaceFlags): string;pure;
// "pure" bedeutet die Funktion ist frei von Nebeneffekten
// deshalb würde der Aufruf der Funktion wie eine Prozedur als Fehler betrachtet
fork me on Github
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.394 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 17:00
Und ich wünsche mir einen Compilerschalter, der konstante Parameter verbietet oder bei der Verwendung warnt:

Delphi-Quellcode:
GenerateComplicatedOutput('Test.txt', 1, 7.35, 'No') // Sollte nicht zulässig sein
GenerateComplicatedOutput(LFileName, LPageNumber, LFactor, C_NO) // So ist es fein
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 17:12
Um das Prozedur-/Funtionsverhalten zu beeinflussen, das wäre jedenfalls {$X-}, standardmässig ist das offensichtlich {$X+}
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.394 Beiträge
 
Delphi 7 Enterprise
 
#9

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 17:21
Um das Prozedur-/Funtionsverhalten zu beeinflussen, das wäre jedenfalls {$X-}, standardmässig ist das offensichtlich {$X+}
Und schon wird fast Dein gesamter Code nicht mehr compiliert weil Du auch kein result mehr hast.
Delphi-Quellcode:
// Geht nicht
function IstUngleichNull(AInteger : integer) : boolean;
begin
  result := AInteger <> 0;
end;

// Muss dann so sein
function IstUngleichNull(AInteger : integer) : boolean;
begin
  IstUngleichNull := AInteger <> 0;
end;
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#10

AW: StringReplace geht nicht

  Alt 23. Feb 2014, 17:42
..wird fast Dein gesamter Code nicht mehr compiliert...
Und ob der compiliert wird. Das wäre zwar strenger, aber mehr Arbeit ist das kaum. Der dämliche Fehler hier, den hätte ich mir jedenfalls erspart.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf