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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2009, 11:19   #1
Neymexa
Proffesional
Форумчанин
 
Аватар для Neymexa
 
Регистрация: 18.11.2008
Сообщений: 417
По умолчанию Работа с текстом в делфи

Код:
procedure TForm1.Button1Click(Sender: TObject);

const DelSym = ' .,!?';
var Text,Word: string;
i: integer;
mas:array[1..10] of string;
begin
  Text:=Memo1.Lines.Text;
  for i := 1 to Length(Text) do
    if Pos(Text[i],DelSym) > 0 then
      Text[i]:=',';

  if Text[1] = ',' then
    Delete(Text,1,1);
  while Pos(',,',Text) > 0 do
    Delete(Text,Pos(',,',Text),1);

  repeat
    Word:=Copy(Text,1,Pos(',',Text)-1);
    Delete(Text,1,Length(Word)+1);
    ListBox1.Items.Add(Word);
  until Length(Text) = 0;
    if Memo1.Lines:=mas[1] then showmessage('+1');
end;
почему ошибка?
[Error] Unit1.pas(50): Incompatible types: 'TStrings' and 'String'
не соответствие типов данных.

Может кто поможет ?
прога должна сравнивать элементы массива со словами в TMemo1 и выдает +1 если такое слово есть в массиве

Заранее спасибо
О, степь родимая, как я скучаю по тебе...
Neymexa вне форума Ответить с цитированием
Старый 19.01.2009, 11:30   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
if Memo1.Lines[i]:=mas[1] then showmessage('+1');
А вообще я бы не так делал...
Слова из Мемо можно получить с помошью DelimitedText, а потом уж и проверять их по циклу.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.01.2009, 11:35   #3
Neymexa
Proffesional
Форумчанин
 
Аватар для Neymexa
 
Регистрация: 18.11.2008
Сообщений: 417
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
if Memo1.Lines[i]:=mas[1] then showmessage('+1');
А вообще я бы не так делал...
Слова из Мемо можно получить с помошью DelimitedText, а потом уж и проверять их по циклу.
Почему же?
да и спасибо за [i] - недоглядел
и кстати не работает пишет тип булеан
О, степь родимая, как я скучаю по тебе...

Последний раз редактировалось Neymexa; 19.01.2009 в 11:37.
Neymexa вне форума Ответить с цитированием
Старый 19.01.2009, 11:39   #4
cvv
 
Регистрация: 17.01.2009
Сообщений: 6
По умолчанию

не if Memo1.Lines[i]:=mas[1] then showmessage('+1');
а if Memo1.Lines[i]=mas[1] then showmessage('+1');
cvv вне форума Ответить с цитированием
Старый 19.01.2009, 11:57   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
cvv
Упс... И на проруху бывает старуха.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.01.2009, 14:00   #6
Neymexa
Proffesional
Форумчанин
 
Аватар для Neymexa
 
Регистрация: 18.11.2008
Сообщений: 417
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Упс... И на проруху бывает старуха.
Согласен
О, степь родимая, как я скучаю по тебе...
Neymexa вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с текстом(C++) silent_witcher Помощь студентам 1 13.12.2008 17:55
Работа с текстом vinimixer Общие вопросы Delphi 0 07.11.2008 21:19
Работа с текстом.[C] DropYourWeapon Общие вопросы C/C++ 3 15.10.2008 21:55
работа с текстом pupil Паскаль, Turbo Pascal, PascalABC.NET 4 15.03.2008 14:00
Работа с текстом Sanek_ntsk Общие вопросы C/C++ 10 12.01.2008 19:42