Hallo,
ich stehe vor dem Problem, den Inhalt eines Eingabefeldes auswerten zu müssen. Das wäre eigentlich ein Fall für die case Anweisung, wenn diese denn mit Strings funktionieren würde. Da das Eingabefeld sowohl Buchstaben als auch Zahlen enthalten kann, scheidet eine Umwandlung a la StrToInt aus. Wegen der Vielzahl der Eingabemöglichkeiten ist ein Ungetüm aus unzähligen if ... then ... else auch nicht angebracht.
Fallen euch noch andere Alternativen ein (die nach Möglichkeit ohne zusätzliche Komponenten funktionieren sollen)?
knight
case mit strings?
Du könntest allen Fällen eine Integer-Konstante zuweisen, dann ein Array von TIdentMapEntry erstellen und mit IdentToInt abfragen. Dann mit der Integer-Konstante Casen. Mach ich so für einen HTML Parser.
TIdentMapEntry und IdentToInt sind in der unit Classes definiert.
Bsp:
TIdentMapEntry und IdentToInt sind in der unit Classes definiert.
Bsp:
Code: Alles auswählen
const
Tags: array[0..108] of TIdentMapEntry = (
(Value: TG_BR; Name: 'BR'),
(Value: TG_P; Name: 'P'),
(Value: TG_B; Name: 'B'),
(Value: TG_I; Name: 'I'),
(Value: TG_DIV; Name: 'DIV'),
...