Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2009, 09:53   #1
pautina
Пользователь
 
Регистрация: 23.01.2009
Сообщений: 32
По умолчанию Определение в строке числа

Здравствуйте Уважаемое сообщество.
Подскажите как разобраться с условием, мне нужно определить являются ли символы строки числом.
В строке числами являются следующие символы 0,0 5,7 2,0 23,6 542,8 675421,7 ...
Код использовал такой
Код:
const
 a0 =0; a1=1; a2=2; a3=3; a4=4; a5=5; a6=6; a7=7; a8=8; a9=9;
 var s:string; i:integer;
begin
//  Условие если строка не пуста то
for i:=0 to length(s) do
begin
 if (s[i]=Chr(32)) and (s[i+1]=a0 or a1 or a2 or a3 or a4 or a5 or a6 or a7 or a8 or a9)
     and (s[i+2]=Chr(Аски код запятой)) and (s[i+3]=a1 or a2 or a3 or a4 or a5 or a6 or a7 or a8 or a9)
     and (s[i+4]=Chr(32)) then //Условие если 1 символ пробел, и 2 символ число, и после числа запятая, и после запятой число, и после числа пробел
     // Выводим это число

end
Как прописать все условия
pautina вне форума Ответить с цитированием
Старый 24.01.2009, 21:57   #2
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Вот функцию набросал за 5 минут
Код:
function isword(s:string):boolen;
const
  nonword=-1; // подберите такое число, какое точно не будет встречатся
var q1:integer;
begin
  result:=true;
  if pos(',',s)=0 then result:=false else begin // если нет запятой то это уже не число
    q1:=pos(',',s);
    if strtointdef(copy(s,1,q1-1),nonword)=nonword then result:=false;
    if strtointdef(copy(s,q1+1,length(s)),nonword)=nonword then result:=false;
  end;
end;
Извеняюсь за ошибки если таковые будут
И да, забыл - вам придется вырезать все строки из главной строки (пробелами) и определить по этой функции.
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг

Последний раз редактировалось Dj_smart; 24.01.2009 в 22:00.
Dj_smart вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
определение в строке числа pautina Общие вопросы Delphi 5 23.01.2009 19:46
определение текста в строке alexssman Общие вопросы C/C++ 2 10.11.2008 17:19
Найти все числа из массива B(n), встречающиеся более чем в одной строке матрицы A(m,n). Alexander89 Паскаль, Turbo Pascal, PascalABC.NET 2 16.10.2008 12:41
Определение количество символов в строке, и самих строк. Патрон Общие вопросы Delphi 10 01.04.2008 12:43
ДАНЫ 4 ЧИСЛА X Y Z W составит программу найти произведение все положительные нечетные числа Woland-itn Паскаль, Turbo Pascal, PascalABC.NET 3 23.03.2008 21:49