Entwickler-Ecke

Sonstiges (FPC / Lazarus) / Linux API - Überprüfung String besteht nur aus Ziffern/Buchstaben


xxCr4sh3dxx - Sa 08.07.17 19:50
Titel: Überprüfung String besteht nur aus Ziffern/Buchstaben
Hallo liebe Community, ich habe folgendes Problem:

Habe heute in C++ ein Programm geschrieben welches einen String vom Benutzer abfragt, diesen dann darauf überprüft ob er nur aus Ziffern und Buchstaben besteht und mir dann ggf. einen Text ausgibt ob der String nur aus Ziffern und Buchstaben besteht oder eben nicht. Dieses Programm wollte ich dann auch in Lazarus nachschreiben, bekomme es aber einfach nicht hin.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
uses
SysUtils;

function isAlpha(AString: String): Boolean;
Var
  c : Char;
begin
  if not (c in ['A'..'Z''0'..'9']) then
     begin
       writeln('Die Zeichenkette enthaelt nur Ziffern und Buchstaben!');
     end
  else
      begin
        writeln('Die Zeichenkette enthaelt NICHT nur Ziffern und Buchstaben!');
      end;
  Result := True;
end;
Var
  AString : String;
  AString2 : Boolean;
begin
  writeln('Funktion Zeichenkette');
  writeln('----------------------');
  writeln;
  write('Zeichenkette eingeben: '); readln(AString);
  AString2 := isAlpha(AString);
  writeln(AString2);
  readln;
end.

Aber irgendwie gibt er mir immer nur aus, dass der String nur aus Ziffern und Buchstaben besteht, egal was ich eingebe.

Moderiert von user profile iconNarses: Code- durch Delphi-Tags ersetzt


Gammatester - Sa 08.07.17 20:03

Du testet nur ein Zeichen (das noch nicht einmal belegt ist). Teste in einer Schleife alle Zeichen, und beende die Funktion mit false, wenn ein nicht Buchstabe/Zahl vorliegt.