Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

правильный поиск в строке [D7, XP]


vigo_ ©   (2006-10-13 13:41:00) 

Добрый день, вопрос по поиску в строке. Есть необходимость проверки первых символов строки, в которой должен быть указан почтовый индекс. Если пользоваться StrToInt(первых шести символов) и попадается не 0..9, то возникает Except, к тому же в некоторых случаях почтовый индекс пишется в скобках. Таким образом, нужно сначала проверить первые два символа и проверка if ((s[1] <> '0' or ... or s[1] <> '9')) or (s[2] <> '0' or ... or s[2] <> '9')) then ...выглядит некрасиво. Как корректно проверить наличие последовательности цифр в строке?


han_malign   (2006-10-13 15:16:00) [1]

еще Val посмотри и (s[i] in['0'..'9'])


vigo_   (2006-10-13 14:38:00) [2]

StrToIntDef - помогло спасибо,  сейчас TryStrToInt посмотрю
Спасибо всем


stone   (2006-10-13 14:25:00) [3]

if not TryStrToInt(LeftStr(s), intValue) then


stone   (2006-10-13 14:25:00) [4]

if not TryStrToInt(LeftStr(s,6), intValue) then


Elen   (2006-10-13 14:02:00) [5]


>  Если пользоваться StrToInt(первых шести символов) и попадается
> не 0..9, то возникает Except,

Как вариант это можно поместить в try except. Можно еще StrToIntDef использовать


Наверх

Титульная страница Поиск, карта сайта Написать письмо