Вопрос № 173315: Здраствуйте Уважаемые эксперты. Требуется помощь в реализации программы. В программе имеется компоненты memo1,memo2 и button1. Нужно сделать так, чтобы при нажатии на кнопку текст в memo1 анализировался следующим образом. Если есть 10 цифр ...
Вопрос № 173315:
Здраствуйте Уважаемые эксперты. Требуется помощь в реализации программы. В программе имеется компоненты memo1,memo2 и button1. Нужно сделать так, чтобы при нажатии на кнопку текст в memo1 анализировался следующим образом. Если есть 10 цифр идущих подряд тогда обратится к условию case в котором записаны, некоторые соответствия (текстовые переменные). И чтобы это соответствие выводилось в memo2. В случае если замечена последовательность цифр меньше 10 то ничего с ней не делать. Искать только те что
10. Заранее спасибо.
Отвечает Евгений/Genia007/, Практикант :
Здравствуйте, Dimon4ik. Вот мой способ решить Вашу задачу.
Код:
procedure TForm1.Button1Click(Sender: TObject); var s, s1, s2: string; i, j: integer; begin s:= ''; s1:= ''; s2:= ''; memo2.Clear; j:= 1; for i := 0 to
memo1.Lines.Count - 1 do begin s1:= memo1.Lines.Strings[i]; for j := 1 to length(s1) + 1 do begin if (s1[j] <> ' ') and (j <> length(s1) + 1) then s:= s + s1[j] else begin if length(s) = 10 then if s = '5132516132' then s2:= s2 + 'Ф' else if s = '3
215112321' then s2:= s2 + 'К' else if s = '3215111111' then s2:= s2 + 'З'; {и так далее} {....................................} s:= ''; end; end; if s2 <> '' then memo2.Lines.Add(s2); s2:= ''; end; end;
Кстати использовать для
выбора строки оператор case здесь проблематично, потому что он требует порядковый тип.
----- Помогли тебе, помоги и ты.
Ответ отправил: Евгений/Genia007/, Практикант
Ответ отправлен: 16.10.2009, 21:23
Оценка ответа: 5 Комментарий к оценке: Отличный подход к задаче! Большое спасибо за помощь.
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 255481
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.