Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi lerzeichen entfernen (https://www.delphipraxis.net/117039-lerzeichen-entfernen.html)

Die Muhkuh 10. Jul 2008 12:51

Re: lerzeichen entfernen
 
Wenn man es unbedingt mit StringReplace machen will, ginge auch sowas:

Delphi-Quellcode:
function StripPlusMinusAndSpace(const Str: string): integer;
begin
  Result := StringReplace(Str, ' ', '', [rfReplaceAll]);
  if (Result[1] = '+') or (Result[1] = '-') then
    Delete(Result, 1, 1);
end;
Spart zumindest 2x StringReplace ein ;-)

RavenIV 10. Jul 2008 12:53

Re: lerzeichen entfernen
 
Zitat:

Zitat von marabu
Hi,

bevor ich StringReplace() dreimal aufrufe, dann lieber eine Funktion, wie Guido es vorgeschlagen hat: klick

StringReplace liegt ja als Source vor, da kann man das ja selber erweitern, dass er als OldString ein "set of String" akzeptiert. Alles, was in diesem Set drin ist, wird durch NewString ersetzt.
Ungefähr so:
Delphi-Quellcode:
Tiere := 'Hund, Elefant, Katze, Frosch, Giraffe, Maus';
Tiere := StringReplace(Tiere, ['Hund', 'Katze', 'Maus'], 'Haustier')

marabu 10. Jul 2008 12:59

Re: lerzeichen entfernen
 
Eigentlich möchte ich das Vorzeichen nicht wegwerfen.

Außerdem gibt es Benutzer, die manchmal Leerstellen, manchmal den Tausenderpunkt zur Verbesserung der Lesbarkeit eintragen.

Delphi-Quellcode:
function StrToIntEx(const s: string): Integer;
begin
  Result := StrToInt(Without(s, [' ', ThousandSeparator]));
end;

procedure TDemoForm.ButtonClick(Sender: TObject);
var
  s: string;
begin
  s := ''
  while InputQuery('Numeric Input Normalization', 'Integer String', s) do
    s := IntToStr(StrToIntEx(s));
end;

Namenloser 10. Jul 2008 13:00

Re: lerzeichen entfernen
 
Zitat:

Zitat von RavenIV
"set of String"

wtf ist ein "set of string"? Meinst du ein variantes Array? :gruebel:

RavenIV 10. Jul 2008 13:04

Re: lerzeichen entfernen
 
Zitat:

Zitat von NamenLozer
Zitat:

Zitat von RavenIV
"set of String"

wtf ist ein "set of string"? Meinst du ein variantes Array? :gruebel:

Weil mir die genaue Bezeichnung grad nicht eigefallen ist, habe ich es in Anführungszeichen gesetzt. ;-)

Lannes 10. Jul 2008 13:23

Re: lerzeichen entfernen
 
Hallo,

@Die Muhkuh: da fehlt noch ein StrToInt :wink:

Wenn der Rückgabetyp ein Integer sein soll:
Delphi-Quellcode:
function StripPlusMinusAndSpace(const Str: string): integer;
begin
  Result := Abs(StrToInt(StringReplace(Str, ' ', '', [rfReplaceAll])));
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:44 Uhr.
Seite 2 von 2     12   

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