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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2010, 20:12   #1
saggy
Форумчанин
 
Регистрация: 08.10.2009
Сообщений: 112
По умолчанию Поиск в Memo по крайним символам

А именно: есть две переменные-строки. Мне нужно сделать функцию, которая возвращает неизвестную строку из текста между данными строками из текста. нифига непонятно? сам знаю. тяжко. вот пример:

getstr(bigtext, before, after): string;

в тексте это так:

bigtext := 'Привет. Меня зовут Блабла. Пока.';
before := 'Привет. ';
after := 'Пока. ';

результат - 'Меня зовут Блабла.'. Возможно, это легкая функа. Но я так запутался, что у мя мозг взорвётся от два мод два. А может даже, есть такая стандартная функа. Я не знаю. Подскажите.
procedure life; for years := 1 to 11 do gotoschool(normal); woman := TMan.add; childrens.add(TMans); problems.add(fuck); woman.destroy; END.
saggy вне форума Ответить с цитированием
Старый 17.02.2010, 21:07   #2
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Форма с 4-мя Edit`ами, соответственно Edit1,Edit2,Edit3,Edit4, лежат на ней по очереди сверху вниз.

001.jpg

Код для кнопки :
Код:
  Edit4.Text := Trim(Copy(Edit1.Text,
                        pos(Edit2.Text, Edit1.Text) + Length(Edit2.Text),
                        pos(Edit3.Text, Edit1.Text) - (pos(Edit2.Text, Edit1.Text) + Length(Edit2.Text))));
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 17.02.2010, 21:11   #3
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

Мой вариант
Код:
function getstr(bigtext, before, after:string): string;
var
  i, j:Integer;
begin
  I:=Pos(bigtext, before)+length(before);
  J:=Pos(bigtext, after);
  Result:=Copy(bigtext, I+1, Length(bigtext)-length(before)-Length(after));
end;
...
Edit4.Text:=getstr('Привет. Меня зовут Блабла. Пока.', 'Привет. ', ' Пока.');
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Старый 17.02.2010, 21:12   #4
saggy
Форумчанин
 
Регистрация: 08.10.2009
Сообщений: 112
По умолчанию

Уууу =) нифига не понял но работает! =)
thanks! спасибо!

21:59

ой... не совсем:
почему в строке
"st^антон.человек.местоположение:ма рс;"
с префиксом st^ и окончанием ; выдаётся не
"антон.человек.местоположение:марс" , а
"рс"
(только последние две буквы)?!

У нас принято пользоваться кнопочкой "Правка", дабы не плодить посты подряд, друг за другом.
Читаем правила. Рекомендую. Помимо общих правил форума есть и дополнения к ним в каждом разделе...
Модератор
procedure life; for years := 1 to 11 do gotoschool(normal); woman := TMan.add; childrens.add(TMans); problems.add(fuck); woman.destroy; END.

Последний раз редактировалось mihali4; 18.02.2010 в 01:05.
saggy вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в MEMO dimafe6 Общие вопросы Delphi 9 09.02.2010 22:03
Поиск значения по двум символам кода maneta Microsoft Office Excel 3 17.01.2010 22:14
Поиск строк по символам в Memo Nocturnal Помощь студентам 2 15.12.2009 17:33
Поиск по Memo photozaz Общие вопросы Delphi 5 25.05.2008 17:55
Поиск в Memo Terran Общие вопросы Delphi 4 07.05.2008 23:33