Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Вниз

Как определить число в строке или нет ?   Найти похожие ветки 

 
Дмитрий Д.   (2002-04-26 14:09) [0]

Уважаемые !
Интересует возможность БЫСТРОГО определения: в строке число или нет ?
я знаю варианты:перебор посимвольно(медлено) и с помощью исключения (пока не устраивает, если ничего не найду придется делать так)
может ктото знает другие варианты ?
Заранее спасибо!


 
Дмитрий Д.   (2002-04-26 14:12) [1]

Забавно:)
никогда еще со смной не было чтобы у когото еще был практически одинаковый вопрос как у меня (у Juli)


 
Виктор Щербаков   (2002-04-26 14:13) [2]


> перебор посимвольно(медлено)

Это почему же медленно?


 
Song   (2002-04-26 14:15) [3]

А Pos не подходи?


 
MBo   (2002-04-26 14:15) [4]

val
strtointdef


 
Dimok   (2002-04-26 14:18) [5]

procedure Val(S; var V; var Code: Integer);
эта процедура переводит строку S в V (real или integer), если в строке S содержалось не число, то в Code возвращается номер первого нецифрового символа, если все нормально, то Code=0.


 
Дмитрий Д.   (2002-04-26 14:50) [6]

Всем спасибо огромное!!!
особое спасибо MBo, Dimok
совсем блин про Val забыл :)
Еще раз всем спасибо!


 
Дмитрий Д.   (2002-04-26 15:22) [7]

Только вот в чем загвоздка... :)
если число более 999999999
то все... приехали...


 
MBo   (2002-04-26 15:33) [8]

i64:=StrToInt64Def(s,-1);
if i64=-1 then...


 
Дремучий   (2002-04-26 19:52) [9]

2 MBo
а если в строке до дого была -1?

правильней будет так
//если число дробное, нужно будет еще подправить
//Length(Trim("-1.0000000000002301")) > 2

function IsInt64(i64:string; var r:longint):boolean;
var j:integer;
begin
if Length(Trim(i64)) > 2
then begin
r:= StrToInt64Def(i64,-1)
if r=-1 then result:= false;
end
else begin
Val(i64,r,j);
result:= j =0;
end;
end;

if IsInt64("23545",r)
then ....
//в r - уже число 23545 ;)
else ....
//значит это было не число :(


 
Дремучий   (2002-04-26 19:56) [10]

это шутка такая!!!
;)


 
Anatoly Podgoretsky   (2002-04-26 20:19) [11]

Дмитрий Д. © (26.04.02 14:12)
ничего общего, у тебя про число, а там про цифры



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

Форум: "Основная";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
14-26258
PVOzerski
2002-04-02 11:38
2002.05.09
Чем занят комп в


6-26211
Schoooltz
2002-02-13 11:02
2002.05.09
Как программно вкл/откл сетвое подключение?


3-26028
AAlexx
2002-04-16 16:25
2002.05.09
Удаление записей в DBGridEh


1-26053
Финик
2002-04-25 13:33
2002.05.09
при создании листа Excel задать формат ячейки


3-25999
Oleg Y.
2002-04-15 13:46
2002.05.09
Формат ввода числа в гриде





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский