AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ist String eine gültige Zahl?"

Ein Thema von Pseudemys Nelsoni · begonnen am 16. Dez 2003 · letzter Beitrag vom 16. Dez 2003
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 10:48
Wenn Du Val nicht willst (Achtung: bei Vall ist XC auch eine Zahl ) dann:
Delphi-Quellcode:
function IsInt(s: string): boolean;
var
  I: Integer;
begin
  for i := 0 to length(s) do
    if not (StrToInt(s[i]) in [0..9]) then
    begin
      result := False;
      Exit;
    end;
  Result := True;
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#12

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 10:52
thX sakrua ^^
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#13

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 10:52
Zitat von Pseudemys Nelsoni:
ja.
Aha. Da steht doch drin wofür der 3. Parameter von Val gut ist.


Zitat:
dann wird: result := false;
Vielleicht. Andererseits
Code:
---------------------------
Project1
---------------------------
Fehler bei Bereichsprüfung.
---------------------------
OK  
---------------------------
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#14

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:06
wieso vielleicht?

Delphi-Quellcode:
      if not (StrToInt(s[i]) in [0..9]) then
      result := false;
wenn s[i] nicht in 0-9 ist dann result := false;. oder nicht


sakura: liegt dieser fehler an der "isint"-funktion?

http://www.angelfire.com/bug/delphi/fehler2.jpg

meine procedure sieht so aus:

Delphi-Quellcode:
  if word(2, s) = 'intervallthen
  begin
    if isint(word(3, s)) then // die zeile wird beim fehler markiert
    begin
      Form1.Timer1.Interval := StrToInt(word(3, s) + '000');
      Form1.IdIRC1.Say(chan, '14¤03¤09¤ Automatische Antwort wurde auf ' + word(3, s) + ' 09Sekunden gestellt');
    end
    else
    Form1.IdIRC1.Say(chan, '14¤05¤04¤ ' + word(3, s) + ' 04ist keine gültige Zahl');
  end;

die function "word" gibt das wort des index's zurück, also bei 3 ist das wort 3 und in diesem fall war das dritte wort "5" also 5 sekunden
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Smokey
Smokey

Registriert seit: 10. Nov 2003
Ort: Puerto de la Cruz
158 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:09
Problem bei StrToInt ist halt, dass er ne Exception schmeisst, was bei VAL nicht der Fall ist, weil dir der zweite Integerwert eben angibt ob ein Fehler aufgetreten ist.

Daher würde ich entweder die Exception abfangen, doch einfach VAL benutzen, oder aber den Code ohne StrToInt machen indem du einfach auf Strings prüfst :

Code:
function IsInt(s: string): boolean;
var
  I: Integer;
begin
  for i := 0 to length(s) do
    [color=red]if not (s[i] in ['0'..'9']) then[/color]
    begin
      result := False;
      Exit;
    end;
  Result := True;
end;
Allerdings bin ich trotz allem ein Verfechter von VAL oder Exception abfangen
Greif dir ein gutes Stück Fleisch auf deinem Weg nach draussen !!!
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#16

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:10
hat sich erledigt ^^ die laufvariable musste bei 1 beginnen.

danke an alle
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#17

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:11
Zitat von Pseudemys Nelsoni:
wieso vielleicht?
Weil vorher der Flieger kommt ...       if not (StrToInt(s[i]) in [0..9]) then ShowMessage( 'dkdkd' ); Oder siehst Du die Message noch?
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#18

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:14
ach, jetzt weiss ich was du meinst, wegen dem strtoint, jo stimmt. nicht dran gedacht danke


@smoke, habe die zeile übernommen, danke
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#19

Re: Ist String eine gültige Zahl?"

  Alt 16. Dez 2003, 11:18
Sorry für die Copy&Waste Error

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 23:38 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