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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2019, 07:37   #1
brownb
Форумчанин
 
Регистрация: 16.10.2016
Сообщений: 157
По умолчанию Удалить лишнее

существует строка в мемо
|350|Петя|Петров|123333|111111

Как вытащить слово только Петя?
brownb вне форума Ответить с цитированием
Старый 18.11.2019, 08:05   #2
Баламут
Баламучу слегка...
Участник клуба
 
Аватар для Баламут
 
Регистрация: 01.11.2006
Сообщений: 1,585
По умолчанию

Ну если без изысков, то примерно так. Думаю пояснять тут нечего. Хотя кажется есть уже готовая ф-ия для подобного. Не помню
Код:
   for i := Pos(substr, str) to Pos(substr, str) + Length(Substr) - 1 do
   begin
      s := s + str[i];
   end;
Баламут вне форума Ответить с цитированием
Старый 18.11.2019, 08:57   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

а вместо Пети Абрам не бывает?
Код:
s:='';
i1:=PosEx('|',str,2);
if i1>1 then begin
  i2:=PosEx('|',str,i1+1);
  if i2>0 then s:=Copy(str,i1+1,i2-i1-1);
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 18.11.2019, 19:23   #4
brownb
Форумчанин
 
Регистрация: 16.10.2016
Сообщений: 157
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
а вместо Пети Абрам не бывает?
Код:
s:='';
i1:=PosEx('|',str,2);
if i1>1 then begin
  i2:=PosEx('|',str,i1+1);
  if i2>0 then s:=Copy(str,i1+1,i2-i1-1);
end;
а как это сделать для каждой строчки в memo?
brownb вне форума Ответить с цитированием
Старый 18.11.2019, 19:30   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В цикле по строчкам
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 10.12.2019, 21:59   #6
brownb
Форумчанин
 
Регистрация: 16.10.2016
Сообщений: 157
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
В цикле по строчкам
Можно пример с мемо?
brownb вне форума Ответить с цитированием
Старый 11.12.2019, 10:12   #7
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,656
По умолчанию

Я думаю, проще было бы использовать ListBox вместо Memo. Визуально - одно и то же, а обращаться - меньше хлопот.
digitalis вне форума Ответить с цитированием
Старый 23.12.2019, 12:15   #8
Heneken87
Форумчанин
 
Регистрация: 27.04.2012
Сообщений: 219
По умолчанию

Цитата:
Сообщение от brownb Посмотреть сообщение
существует строка в мемо
|350|Петя|Петров|123333|111111

Как вытащить слово только Петя?
А по каким критериям вытаскивать? Хочу слово 2(Это Петя)? Или хочу Петю из всех слов?
Пишу много и развернуто
Heneken87 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить лишнее ProoShift Microsoft Office Excel 4 07.06.2015 22:21
Убрать лишнее pruf PHP 24 06.09.2011 19:06
Убрать лишнее Айдар Общие вопросы C/C++ 1 17.09.2010 01:08
ListViev: удалить лишнее в нём fezilk24 Общие вопросы Delphi 5 15.06.2010 22:21
убрать лишнее из программы dragun4ik Помощь студентам 2 30.01.2010 17:33