Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.13;
Скачать: CL | DM;

Вниз

Проверка строки   Найти похожие ветки 

 
Igor2010   (2009-07-11 12:22) [0]

Как проверить является ли строка(string) числом(integer, real)?


 
Юрий Зотов ©   (2009-07-11 12:30) [1]

Либо парсить, либо что-то типа этого:
function IsInteger(S: string): boolean;
begin
 try
   StrToInt(S)
   Result := true
 except
   Result := false
 end
end;


 
Игорь Шевченко ©   (2009-07-11 12:40) [2]

tryStrto...


 
oldman ©   (2009-07-11 13:14) [3]


> Igor2010   (11.07.09 12:22)  
> Как проверить является ли строка(string) числом(integer,
>  real)?


string:="двадцать пять" является числом?


 
turbouser ©   (2009-07-11 13:15) [4]


> oldman ©   (11.07.09 13:14) [3]


и снова атака буквоедов


 
oldman ©   (2009-07-11 13:22) [5]


> turbouser ©   (11.07.09 13:15) [4]


перефразируем...

string:="25,52е +10" является числом?
string:="25*22-(12+14)/7" является числом?

если только InToStr и IntToFloat, это скучно...


 
oldman ©   (2009-07-11 13:24) [6]


> если только InToStr и IntToFloat, это скучно...


StrToInt и StrToFloat, ессно...
руки кривые!!!


 
Igor2010   (2009-07-11 13:43) [7]

Спасибо работает, закрываем темку


 
brother ©   (2009-07-13 07:05) [8]

уж не для едитов ли хочешь использовать?


 
Ega23 ©   (2009-07-13 10:00) [9]


> Как проверить является ли строка(string) числом(integer,
>  real)?


Val + F1


 
Amoeba ©   (2009-07-13 11:58) [10]


> Ega23 ©   (13.07.09 10:00) [9]
>
>
> > Как проверить является ли строка(string) числом(integer,
>
> >  real)?
>
>
> Val + F1

А если DecimalSeparator - запятая? Тогда как быть?


 
Anatoly Podgoretsky ©   (2009-07-13 12:10) [11]

А видимо так и есть.


 
clickmaker ©   (2009-07-13 12:14) [12]

> А если DecimalSeparator - запятая? Тогда как быть?

чиста риальные пацаны сразу заменяют DecimalSeparator на свой, при старте программы. А особо крутые перцы меняют сразу системные настройки -)


 
Anatoly Podgoretsky ©   (2009-07-13 12:20) [13]

> clickmaker  (13.07.2009 12:14:12)  [12]

А что делают риальные пацаны, при S1 = "1.23" и при S2 = "1,23"


 
clickmaker ©   (2009-07-13 12:25) [14]

> А что делают риальные пацаны, при S1 = "1.23" и при S2 =
> "1,23"

StringReplace


 
Anatoly Podgoretsky ©   (2009-07-13 13:55) [15]

> clickmaker  (13.07.2009 12:25:14)  [14]

Вопрос не про преобразование, с этим как раз просто, а о том, что только одно является числом, а другое нет и неизвестно какое.


 
Ega23 ©   (2009-07-13 15:43) [16]


> А если DecimalSeparator - запятая? Тогда как быть?


s := StringReplace(StringReplace(s, ".", DecimalSeparator, []), ",", DecimalSeparator, []);


 
Ega23 ©   (2009-07-13 15:45) [17]

Собственно, TryStrToInt через Val и работает:

function TryStrToInt(const S: string; out Value: Integer): Boolean;
var
 E: Integer;
begin
 Val(S, Value, E);
 Result := E = 0;
end;


 
Amoeba ©   (2009-07-13 16:07) [18]

А если, не дай Бог, американский формат?
123,456,789.00
Чем руководствоваться применяя StringReplace?


 
Anatoly Podgoretsky ©   (2009-07-13 16:10) [19]

> Amoeba  (13.07.2009 16:07:18)  [18]

Не дай бог конечно, а какая разница?


 
Ega23 ©   (2009-07-13 16:13) [20]


> А если, не дай Бог, американский формат?


А что, Val определяет, американский формат, или арабо-израильский?
Или вообще, у меня римскими цифрами записано?



Страницы: 1 вся ветка

Текущий архив: 2009.09.13;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.012 c
2-1247507570
AlexDan
2009-07-13 21:52
2009.09.13
странички PageControl..


2-1247176562
Zonder2008
2009-07-10 01:56
2009.09.13
Найти вхождение подстроки через определенное количество символов


15-1245862119
TIF
2009-06-24 20:48
2009.09.13
Все версии Windows


15-1247255297
Shyrick
2009-07-10 23:48
2009.09.13
Сложение чисел в двоичной системе


15-1248039005
Юрий
2009-07-20 01:30
2009.09.13
С днем рождения ! 20 июля 2009 понедельник