Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


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

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

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

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

а вместо Пети Абрам не бывает?
Код:
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, 20:23   #4
brownb
Форумчанин
 
Регистрация: 16.10.2016
Сообщений: 121
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
а вместо Пети Абрам не бывает?
Код:
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, 20:30   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,061
По умолчанию

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

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

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

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

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить лишнее ProoShift Microsoft Office Excel 4 07.06.2015 23: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 18:33