Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Парсер (Replace) для list
 
 автор: Diablo_   (12.11.2010 в 23:55)   письмо автору
 
 

Написал вот два таких парсера
// список простой
text = text.replace(/\[list\](.+?)\[\/list\]/ig, '<ul>$1</ul>');
// список нумерованый
text = text.replace(/\[list_num\](.+?)\[\/list_num\]/ig, '<ol>$1</ol>');
// парсер для текста из списка
text = text.replace(/\[\*\](.+?)/ig, '<li>$1</li>');

При вводе вот такого текста:
[list]
[*]sdfdsfsd
[*]fsd
[*]sdfsdfs
[/list]

выводится коряво, а именно не заменяется лист. И сразу после первой буквы в строке, происходит перенос строки.
При вводи вот такого текста:
[list][*]sdfdsfsd[*]fsd[*]sdfsdfs[/list]

лист подменяется, нормально, но после первой буквы каждой строчки, происходит перенос строки. в чём может быть проблема? Что не верно в регулярке?

  Ответить  
 
 автор: АЯ   (13.11.2010 в 01:01)   письмо автору
 
   для: Diablo_   (12.11.2010 в 23:55)
 

В стандарте указано: "The LI element is an inline element and does not require a closing tag.", что означает - закрывающий тег </LI> не обязателен.

Отсюда:
// список простой 
text = text.replace (/\[list\]/ig, '<ul>').replace (/\[\/list\]/ig, '</ul>');
// список нумерованый 
text = text.replace (/\[list_num\]/ig, '<ol>').replace (/\[\/list_num\]/ig, '</ol>');
// парсер для текста из списка 
text = text.replace(/\[\*\]/ig, '<li>');

  Ответить  
 
 автор: Diablo_   (13.11.2010 в 09:09)   письмо автору
 
   для: АЯ   (13.11.2010 в 01:01)
 

Спасибо большое! Никогда бы не подумал что так делается!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования