Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> preg replace callback + zagniezdzony bbcode
deniol13
post
Post #1





Grupa: Zarejestrowani
Postów: 190
Pomógł: 2
Dołączył: 30.11.2009

Ostrzeżenie: (10%)
X----


witam, jak zastosowac preg replace callback aby dzialal zagniezdzony bbcode? mam np taki regexp i czesc kodu

  1. $regExp = '\[code\](.*)\[\/code\]';
  2. $text = preg_replace_callback( '/' . $regExp . '/siU', array( $this, 'codeParse' ), $text, 9999 );


a metoda codeParse wyglada tak

  1. private function codeParse( $text )
  2. {
  3. if( is_array( $text ) )
  4. {
  5. $text = '<div class="code">' . $text[1] . '</div>';
  6. }
  7.  
  8. return $text;
  9. }


jak jest pojedynczy code lub sa dwa ale oddzielne to jest ok, ale jak juz jeden dam w drugi to nie za bardzo (zagniezdzone)

podbijam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Spawnm
post
Post #2





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Zobacz z takim regexem:
  1. #\<!--c1--><div class='codetop'>Kod</div><div class='codemain'><!--ec1-->((?:[^[]|\[(?!/?code])|(?R))+)\<!--c2--></div><!--ec2-->#
Powód edycji: [Spawnm]: #[code]((?:[^[]|[(?!/?code])|(?R))+)[/code]#
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 10:01