j0k3r Опубликовано 21 Мая 2003 Жалоба Поделиться Опубликовано 21 Мая 2003 Хочется сабж Притом не просто совет - перерой и исправь.Неплохо, чтоб работали оба варианта, т.е. и "q" и "quote". Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
AlexXF Опубликовано 21 Мая 2003 Жалоба Поделиться Опубликовано 21 Мая 2003 элементарно, ватсон! файл ./sources/lib/post_parser.php --------------------------------------------------------------------------------------------------- /**************************************************/ // regex_html_tag: HTML syntax highlighting // /**************************************************/ function regex_html_tag($html="") { if ($html == "") return; // Ensure that spacing is preserved // Too many embedded code/quote/html/sql tags can crash Opera and Moz if (preg_match( "/\[(q|quote|code|html|sql)\].+?\[(q|quote|code|html|sql)\].+?\[(q|quote|code|html|sql)\].+?\[(q|quote|code|html|sql)\].+?\[(q|quote|code|html|sql)\]/i", $html) ) { return $default; } ..... --------------------------------------------------------------------------------------------------- Далее... --------------------------------------------------------------------------------------------------- function regex_parse_quotes($the_txt="") { if ($the_txt == "") return; $txt = $the_txt; $this->quote_html = $this->wrap_style( array( 'STYLE' => 'QUOTE' ) ); $txt = preg_replace( "#\#ie" , "\$this->regex_simple_quote_tag()" , $txt ); $txt = preg_replace( "#\#ie" , "\$this->regex_quote_tag('\\1', '\\2')" , $txt ); $txt = preg_replace( "#\#ie" ' date=' "\$this->regex_quote_tag('\\1', '')" , $txt ); $txt = preg_replace( "#\[/quote\']#ie" , "\$this->regex_close_quote()" , $txt ); $txt = preg_replace( "#\[q\]#ie" , "\$this->regex_simple_quote_tag()" , $txt ); $txt = preg_replace( "#\[q=(.+?),(.+?)\]#ie" , "\$this->regex_quote_tag('\\1', '\\2')" , $txt ); $txt = preg_replace( "#\[q=(.+?)\]#ie" , "\$this->regex_quote_tag('\\1', '')" , $txt ); $txt = preg_replace( "#\[/q\]#ie" , "\$this->regex_close_quote()" , $txt ); $txt = preg_replace( "/\n/", "<br>", $txt ); if ( ($this->quote_open == $this->quote_closed) and ($this->quote_error == 0) ) { // Preserve spacing $txt = preg_replace( "#(<!--QuoteEBegin-->.+?<!--QuoteEnd-->)#es", "\$this->regex_preserve_spacing('\\1')", trim($txt) ); return $txt; } else { return $the_txt; } }--------------------------------------------------------------------------------------------------- И еще... --------------------------------------------------------------------------------------------------- /**************************************************/ // regex_build_url: Checks, and builds the a href // html /**************************************************/ function regex_build_url($url=array()) { $skip_it = 0; // Make sure the last character isn't punctuation.. if it is, remove it and add it to the // end array if ( preg_match( "/([\.,\?]|!)$/", $url['html'], $match) ) { $url['end'] .= $match[1]; $url['html'] = preg_replace( "/([\.,\?]|!)$/", "", $url['html'] ); $url['show'] = preg_replace( "/([\.,\?]|!)$/", "", $url['show'] ); } // Make sure it's not being used in a closing code/quote/html or sql block if (preg_match( "/\[\/(html|q|quote|code|sql)/i", $url['html']) ) { return $url['html']; } ....--------------------------------------------------------------------------------------------------- Но учти!!! Писать можно будет в сообщениях и так и эдак, а вот если их редактировать, то парсер будет автоматом подставлять QUOTE, а не Q. Добавлено: А вообще - это лень заглянуть в исходники... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 21 Мая 2003 Автор Жалоба Поделиться Опубликовано 21 Мая 2003 AlexXF Wow! Пасибки!Но учти!!! Писать можно будет в сообщениях и так и эдак, а вот если их редактировать, то парсер будет автоматом подставлять QUOTE, а не Q.Да эт нормально.. да и кстати.. это же можно как-нибудь намутить... + ещё надо в форме быстрого ответа намутить Q ... А вообще - это лень заглянуть в исходники...У меня? Ну да.. есть такое.. Хотя я б врядли сам такое сделал Ещё раз пасибки!!! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 7 Июня 2003 Автор Жалоба Поделиться Опубликовано 7 Июня 2003 Сделал я так... а что-то у меня не работает В чём проблема? (Руки, ДНК не трогать) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
IBResource Опубликовано 8 Июня 2003 Жалоба Поделиться Опубликовано 8 Июня 2003 Что не работает-то? Вариант AlexXF ? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 10 Июня 2003 Автор Жалоба Поделиться Опубликовано 10 Июня 2003 Oska Да.То есть не парсится вся эта хрень... так голые теги и выводит Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
AlexXF Опубликовано 13 Июня 2003 Жалоба Поделиться Опубликовано 13 Июня 2003 Ну забыл еще про одну функцию... файл ./sources/lib/post_parser.php /**************************************************/// convert:// Parses raw text into smilies, HTML and iB CODE/**************************************************/ function convert($in=array( 'TEXT' => "", 'SMILIES' => 0, 'CODE' => 0, 'SIGNATURE' => 0, 'HTML' => 0)) {.........$txt = preg_replace( "#(\.*\[/quote\])#ies" , "\$this->regex_parse_quotes('')" , $txt );$txt = preg_replace( "#(\[q(.+?)?\].*\[/q\])#ies" , "\$this->regex_parse_quotes('')" , $txt ); ......... только и всего! Добавлено: Ну и еще дополнение: Если хочется, чтобы все QUOTE в дальнейшем заменялись на Q, то смени вот здесь: function unconvert($txt="", $code=1, $html=0) {...... $txt = preg_replace( "#<!--QuoteBegin--(.+?)\+(.+?)-->(.+?)<!--QuoteEBegin-->#" , "" , $txt );$txt = preg_replace( "#<!--QuoteBegin--(.+?)\+-->(.+?)<!--QuoteEBegin-->#" , "" ' date=' $txt );$txt = preg_replace( "#<!--QuoteBegin-->(.+?)<!--QuoteEBegin-->#" , '' , $txt );$txt = preg_replace( "#<!--QuoteEnd-->(.+?)<!--QuoteEEnd-->#" , '' , $txt ); меняем на:$txt = preg_replace( "#<!--QuoteBegin--(.+?)\+(.+?)-->(.+?)<!--QuoteEBegin-->#" , "[Q=\1,\2]" , $txt );$txt = preg_replace( "#<!--QuoteBegin--(.+?)\+-->(.+?)<!--QuoteEBegin-->#" , "[Q=\1]" , $txt );$txt = preg_replace( "#<!--QuoteBegin-->(.+?)<!--QuoteEBegin-->#" , '[Q]' , $txt );$txt = preg_replace( "#<!--QuoteEnd-->(.+?)<!--QuoteEEnd-->#" , '[/Q]' , $txt ); Что у нас в итоге получится?При редактировании сообщения, независимо от того какой тег использовал изначально пользователь QUOTE или Q всегда будет отображаться [Q]цитата[/Q] Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 9 Августа 2003 Автор Жалоба Поделиться Опубликовано 9 Августа 2003 Так-с...... Ну я всё это проделал.В итоге, когда я использую тег Q, у меня всё, что огорожено этим тегом, пропадает.Где я что-то не так сделал? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dmitri_ru Опубликовано 27 Февраля 2008 Жалоба Поделиться Опубликовано 27 Февраля 2008 Открываем файл в Word, нажимием CTR+H (замена) и меняем quote на q, а QUOTE на Q. Не забудь поставить "Учитывать регистр" и жмем кнопку "Replace All" Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 27 Февраля 2008 Жалоба Поделиться Опубликовано 27 Февраля 2008 ахтунг, апнута тема 2003 года Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 27 Февраля 2008 Жалоба Поделиться Опубликовано 27 Февраля 2008 Открываем файл в Word, нажимием CTR+H (замена) и меняем quote на q, а QUOTE на Q. Не забудь поставить "Учитывать регистр" и жмем кнопку "Replace All" Ворд, ага, жжёте. Раз уж начали, расскажите нубам как потом сохратить php файл там, а то они не смогут, в отличии от вас. ахтунг, апнута тема 2003 года Ага Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
U-N-O Опубликовано 19 Марта 2008 Жалоба Поделиться Опубликовано 19 Марта 2008 Притом что просили Q алиасом а не заменой Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 19 Марта 2008 Жалоба Поделиться Опубликовано 19 Марта 2008 Открываем файл в Word, нажимием CTR+H (замена) и меняем quote на q, а QUOTE на Q. Не забудь поставить "Учитывать регистр" и жмем кнопку "Replace All"уха-ха-ха просим просимсделайте так обязательно Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.