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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2012, 00:47   #1
ПИнасол
Пользователь
 
Регистрация: 26.02.2012
Сообщений: 32
Радость Работа со строками в делфи

Ребят помогите решить задачу ну или направьте как то пожалуйста...ну так вот....надо написать программу чтобы она считывала текст из memo1 и кидала в Edit1 2 букву каждого слова (Пр: мАма мЫла рАму) как то так %)
я даже не знаю с чего начать...
p.s. заранее спасибо
ПИнасол вне форума Ответить с цитированием
Старый 16.05.2012, 01:04   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

получите и распишитесь. (один из вариантов. используется поиск пробелов через PosEx)
Код:
uses StrUtils;

procedure TFormXX.Button1Click(Sender: TObject);
var s : string;
  kPrev, kNew : integer;
begin
  s := Trim(Memo1.Lines.Text)+' ';
  s := StringReplace(s, #13#10, ' ', [rfReplaceAll, rfIgnoreCase]);
  while Pos('  ',s)>0 do Delete(s, Pos('  ',s), 1);

  // очистили Edit1
  Edit1.Text := '';

  kPrev := 0;
  kNew := PosEx(' ', s, kPrev+1);
  while kNew>0 do begin
    if kNew-kPrev>2 then
       Edit1.Text := Edit1.Text + Copy(s, kPrev+2, 1)+' ';
    kPrev := kNew;
    kNew := PosEx(' ', s, kPrev+1);
  end;

end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.05.2012, 09:53   #3
ПИнасол
Пользователь
 
Регистрация: 26.02.2012
Сообщений: 32
По умолчанию

все работает,спасибо большое

Последний раз редактировалось ПИнасол; 16.05.2012 в 10:31.
ПИнасол вне форума Ответить с цитированием
Старый 16.05.2012, 10:28   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от ПИнасол Посмотреть сообщение
делфи не опознает команду posex О_о
и выдает ошибку что делать?
а StrUtils; эта какая то библиотека?
библиотека функций обработки строк. описание есть в Help.
но вам это не суть важно.

а важно то, что нужная вам функция PosEx описана как раз в этом файле.

поэтому допишите в Uses ...., StrUtils

и функция найдётся.

Добавлено

Цитата:
после uses всё кидает в ошибку
библиотеки в uses перечисляются через ЗАПЯТУЮ!!!!
(точка с запятой в Паскале КОНЕЦ оператора!!!)
а вы точку с запятой зачем-то воткнули! Там нужна запятая!


p.s. я такие вещи предпочитаю писать в разделе implementation
- там дописывайте uses и те библиотеки, которые Вам в данном модуле нужны.
но данную библиотеку можно в в главном Uses модуля указать, она ни с кем не конфликтует...

Последний раз редактировалось Serge_Bliznykov; 16.05.2012 в 10:32.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача со строками,в делфи,не получается((( Рокси Помощь студентам 2 16.12.2010 18:20
Работа с матрицами (норма матрицы, работа со строками) Neitrosha Помощь студентам 1 26.11.2010 20:19
Работа с файлами и строками в Делфи 7 Николай ПН Помощь студентам 1 22.04.2010 16:18
Работа со строками в Делфи GunS Помощь студентам 2 14.04.2009 08:33
из делфи в С++ Билдер (работа со строками) Askar_g Общие вопросы C/C++ 0 15.03.2009 10:10