![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
тип символа [D5, Win2k]
vvv © (2004-10-28 11:35:00)Приветствую!
Подскажите пожайлуста как определить тип символа (буква или цифра),т.е. есть ли Функции определения типа символов.
Ведь в тупую описывать все символы клавы не хочется.
Спосибо.
Sandman25 (2004-10-28 12:42:00) [1][7] MBo © (28.10.04 12:40)
Зато структурнее.
MBo (2004-10-28 12:40:00) [2]IsCharAlpha(Numeric) - но использовать это ИМХО бессмыссленно, in быстрее.
Sandman25 (2004-10-28 12:31:00) [3][5] vvv © (28.10.04 12:25)
TCharType = (ctDigit, ctDelimiter, ctEnglishLetter, ctUnknown);
function GetCharType(const C: Char): TCharType;
begin
case C of
'0'..'9':
Result := ctDigit;
'a'..'z','A'..'Z':
Result := ctEnglishLetter;
' ','.',',',':':
Result := ctDelimiter;
else
Result := ctUnknown;
end;
end;
vvv (2004-10-28 12:25:00) [4]Спосибо кто ответил.
Но еще раз: есть ли Функцииопределения типа символов.
Например в PHP есть
ctype_digit - проверяет наличие цифр.
Описание
bool ctype_digit (string text)
Возвращает TRUE, если каждый символ в text является десятеричной цифрой, FALSE в ином случае.
begin...end (2004-10-28 11:41:00) [5]
var
Ch: Char;
begin
if Ord(Ch) in [80..89] then
// Это цифра
else
// Это не цифра, но и необязательно буква
end.
Лучше, действительно, [3].
Pentium133 (2004-10-28 11:37:00) [6]Попробуй сделать StrToInt.
Если возникнет исключение значит буква.
begin...end (2004-10-28 11:37:00) [7]Определяем код символа (функция Ord) и проверяем, есть ли код в множестве кодов цифр, например.
NewDelpher (2004-10-28 11:37:00) [8]if C in ['0'..'9'] then цифра else буква