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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.07.2011, 21:15   #1
Zloy_Doomer
Форумчанин
 
Аватар для Zloy_Doomer
 
Регистрация: 25.04.2008
Сообщений: 277
Лампочка Copy и pos

Здравствуйте, понимаю что вопрос делитантский, но забыл... Имеется некая строка вида название=параметр, нужно отделить параметр от названия....Делаю ето так:
Код:
l := copy(l,pos(l,'='),MAXINT);
Но в месте с параметром копируется и знак "="... Где я ошибся???
it is a good day to die
Zloy_Doomer вне форума Ответить с цитированием
Старый 01.07.2011, 21:19   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
l := copy(l,pos(l,'=')+1,MAXINT);
вы же нашли =, и начиная с равно копируете, вот и результат.

вообще посоветовал бы посмотреть в сторону TStringList, у него есть возможность обработк таких строк.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 01.07.2011, 21:58   #3
Zloy_Doomer
Форумчанин
 
Аватар для Zloy_Doomer
 
Регистрация: 25.04.2008
Сообщений: 277
По умолчанию

У меня в простом тектсовом фале записанны параметры программы конструкциикак я писал уже выше выглядят так: название параметра=параметр...

Пепел Феникса
Если использую код который дали вы
Код:
l := copy(l,pos(l,'=')+1,MAXINT);
то почемуто результатом является вся строка, хотя по логике вещей должнопроисходить не так...

Мне нада выделить в переменную именно параметр....
it is a good day to die
Zloy_Doomer вне форума Ответить с цитированием
Старый 01.07.2011, 22:03   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Код:
l := copy(l,pos('=',l)+1,MAXINT);
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 01.07.2011, 22:09   #5
Zloy_Doomer
Форумчанин
 
Аватар для Zloy_Doomer
 
Регистрация: 25.04.2008
Сообщений: 277
По умолчанию

Аватар

Спасибо то что нужно!
it is a good day to die
Zloy_Doomer вне форума Ответить с цитированием
Старый 02.07.2011, 00:49   #6
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

А не проще было это через ini файлы организовать?
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Старый 02.07.2011, 08:46   #7
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Еще проще было написать:
Код:
GetAfter('название=',строка);
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 03.07.2011, 00:41   #8
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Еще проще было написать:
Код:
GetAfter('название=',строка);
В D7 нет такой процедуры.
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Старый 03.07.2011, 06:13   #9
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Цитата:
В D7 нет такой процедуры
Никто и не говорил, что она там есть. Это сторонняя функция:
Код:
function GetAfter(substr, str:string):string;
begin
if pos(substr,str)>0 then
  result:=copy(str,pos(substr,str)+length(substr),length(str))
else
  result:='';
end;
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
copy or pos(делфи) lama90 Помощь студентам 1 31.05.2011 18:17
pos copy delete Aleksandr69 PHP 7 09.05.2011 18:37
Робота с строками. POS()Copy()DELETE() XxXSuperXxX Паскаль, Turbo Pascal, PascalABC.NET 4 08.04.2011 19:35
pos, copy Вопрос. CraftR14 Общие вопросы Delphi 2 02.06.2010 19:07
pos и copy zotox Помощь студентам 1 23.10.2008 21:13