Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zahlen aus String Filtern (https://www.delphipraxis.net/125070-zahlen-aus-string-filtern.html)

reyka 30. Nov 2008 10:23


Zahlen aus String Filtern
 
Moin moin, wünsche euch einen wunderschönen Sonntagmorgen!

Ich bin gerade beim Schreiben auf ein Problem gestoßen. (Bitte nicht hauen wenn es schon mal behandelt wurde, werde daraus nicht schlau).
Ich möchte ein Formular mit Edit-Feld, Button, und Label haben.
So...nun möchte ich in das Edit-Feld einen Text eingeben (z.B. Du hast 800 Euro und 20 Fische im Karton).
Das Programm soll nun die Zahl vor "Euro" in eine Variable schreiben und die Zahl vor "Fische" in eien andere Variable (heist das Variable oder Variabel?).

Wie kann ich den Text nach Zahlen durchsuchen, den Beginn und das Ende der Zahl herausfinden?

mfg reyka

:cheers:

mkinzler 30. Nov 2008 10:31

Re: Zahlen aus String Filtern
 
Befinden sich mehrere Zahlen im String?

reyka 30. Nov 2008 10:32

Re: Zahlen aus String Filtern
 
jap, siehe Beispiel satz
Zitat:

(z.B. Du hast 800 Euro und 20 Fische im Karton)

toms 30. Nov 2008 10:33

Re: Zahlen aus String Filtern
 
Zitat:

Zitat von mkinzler
Befinden sich mehrere Zahlen im String?

Ich denke schon "Du hast 800 Euro und 20 Fische im Karton"

Cyf 30. Nov 2008 10:51

Re: Zahlen aus String Filtern
 
Sind die Zahlen grundsätzlich durch Leerzeichen getrennt?
("Duhast12Eierundbackst2Kuchen")

reyka 30. Nov 2008 10:53

Re: Zahlen aus String Filtern
 
immer getrennt

DeddyH 30. Nov 2008 10:57

Re: Zahlen aus String Filtern
 
Sind das eigentlich freie Eingabetexte, die der User eingibt, oder kommen die Werte aus deinem Programm? Im letzten Fall ist IMO bereits der Ansatz falsch.

reyka 30. Nov 2008 11:02

Re: Zahlen aus String Filtern
 
Zitat:

..nun möchte ich in das Edit-Feld einen Text eingeben
kommt vom User .

Meflin 30. Nov 2008 11:02

Re: Zahlen aus String Filtern
 
Zitat:

Zitat von reyka
Wie kann ich den Text nach Zahlen durchsuchen, den Beginn und das Ende der Zahl herausfinden?

-> Hier im Forum suchenRegular Expressions sind dein Freund!

Eine hervorragende Seite dazu: http://www.regular-expressions.info/

reyka 30. Nov 2008 11:09

Re: Zahlen aus String Filtern
 
:wiejetzt:

da versteh ich leider nur bahnhof :'(

Cyf 30. Nov 2008 12:43

Re: Zahlen aus String Filtern
 
Ich hätte ja einfach vorgeschlagen mir ein dynamisches Array of Integer zu bauen und den Text (z.B. mit Pos) einfach immer bis zum nächsten Leerzeichen zu durchlaufen und zu schauen, ob da eine gültige Zahl steht.
Aber regular expressions kommen natürlich auf das selbe raus.

inherited 30. Nov 2008 12:54

Re: Zahlen aus String Filtern
 
Delphi-Quellcode:
var sl: TStringList; i, k: Integer;
[...]
  sl := TStringList.Create;
  try
    sl.Delimiter := ' ';
    sl.DelimitedText := 'Du hast 800 Euro und 20 Fische im Karton';
    for i := 0 to sl.count - 1 do
    begin
      if TryStrToInt(sl[i], k) then
      begin
        //Ich bin eine Zahl
      end else begin
        //Ich bin keine Zahl
      end;
    end;
  finally
    sl.Free;
  end;
end;

reyka 30. Nov 2008 15:33

Re: Zahlen aus String Filtern
 
@inherited

Super danke werd ich gleich mal ausprobieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz