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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2011, 11:44   #11
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Гениально. А что, про PosEx из StrUtils уже все забыли.

Последний раз редактировалось Человек_Борща; 15.12.2011 в 11:53.
Человек_Борща вне форума Ответить с цитированием
Старый 15.12.2011, 13:12   #12
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Гениально. А что, про PosEx из StrUtils уже все забыли.
да неее, можно ему и регулярные выражения поюзать, но разбираться
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 15.12.2011, 13:38   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Код:
   while  o^.b do //есть 100% уверенность, что после o:=o^.next по концу здесь будет False?
   begin
...
      o:=o^.next;
      l:=length(o^.data);
   end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 17.12.2011, 12:56   #14
Mister.V
 
Аватар для Mister.V
 
Регистрация: 14.12.2011
Сообщений: 7
По умолчанию

Всем спасибо за помощь!

Решил проблему следующим способом, вот код:
Код:
constructor WordsOUT.Create(BD:spisok; var s:string);
var
   o:link;
   i:byte := 1;
begin
   while i < 30 do
   begin
   o:=BD.begr;
   while  o^.b do
   begin
      if o^.data <> '' then
      s:= s.Replace(o^.data,' ');
      o:=o^.next;
   end;
   inc(i)
   end;
end;
Функции AnsiReplaceStr в PascalABC.NET нет, как и нет библиотеки StrUtils, но зато в нём оказался класс для работы со строками.
Аналог
Код:
StrPage := AnsiReplaceStr(StrPage, 'подстрока', '#');
выглядит как
Код:
StrPage:= StrPage.Replace('подстрока', '#');
ЗЫ. Тема закрыта
Mister.V вне форума Ответить с цитированием
Старый 17.12.2011, 13:01   #15
Mister.V
 
Аватар для Mister.V
 
Регистрация: 14.12.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Код:
   while  o^.b do //есть 100% уверенность, что после o:=o^.next по концу здесь будет False?
   begin
...
      o:=o^.next;
      l:=length(o^.data);
   end;
Да, последний (или первый, какой там) элемент стека у меня имеет ключ b со значением false (все остальные элементы имеют значение true). Работа с ключом просто не подводит, работает без перебоев.
Mister.V вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск подстроки в строке ...на Турбо СИ ianush Помощь студентам 3 13.11.2011 19:05
Поиск подстроки в строке videolord Общие вопросы по Java, Java SE, Kotlin 2 10.04.2011 09:11
Поиск подстроки в строке valdemar593 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 03.06.2010 21:42
поиск подстроки в строке!!! StoneSour Общие вопросы C/C++ 2 15.03.2010 21:31