Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Закрытие открытых тегов


Автор: Paranoik 6.6.2006, 16:42
Блин, подскажите пожалуйста. Мне нужно закрывать открытые тэги при нажатии ">" (пример: "<body" нажимает ">" и в итоге он закрывается получаем "<body></body>"), воть. Как реализовать ? 

Автор: _hunter 6.6.2006, 17:23
анализируеш ввод. при вводе ">" пробегаеш по тексту назад до первого < (вообще-то до первого разделителя т.е. и на ">" нужно тормозиться) запоминая пробегаемый текст (это тоолько для простых тегов. если тег может содержать параметры (img) нужно сохранить только последний текст). потом ищеш этот запомненный текст в базе тегов и дописываеш закрывающий тег 

Автор: Paranoik 6.6.2006, 17:31
Алгоритм-то я примерный знаю... а вот процедурку не напишишь ? Каким образом искать в тексте открытый тег ? 

==========
всегда играю в flash игры бесплатно на www.nogame.ru 

Автор: Yanis 6.6.2006, 17:33
Цитата(Paranoik @  6.6.2006,  18:31 Найти цитируемый пост)
Каким образом искать в тексте открытый тег ?  

Функцией Pos или пробегать всё строку в цикле и запоминать положения. Всё от алгоритма зависит. Типа:
Код
var
  i: Integer;
  s: string;
begin
  for i := 1 to Length(s) do
    if s[i] =<> bla-bla-bla then ...
end;
  

Автор: Paranoik 6.6.2006, 17:59
Я использую компонент SynEdit, а точнее на форму брошен synmemo, мне кажется там как-то попроще мона... Но как ? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)