Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> preg_replace problem z ustawienie pewnego tagu
Avatarus
post
Post #1





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

Ostrzeżenie: (0%)
-----


Witam
Mam problem z ustawienie pewnego tagu w BBcode.
Otóż jest taki tag jak
  1. tresc


i BBcode do tego działa, ale phpbb zapisuje też jakieś dziwne tagi czasem w takiej formie:
Na tym forum można raportować błędy wyświetlania nowego layouta strony.[/color:80303ca325]

Jak zmienić istniejącą regułę

  1. <?php
  2. $str = preg_replace("#[color=(http://)?(.*?)](.*?)#si", "<span style=\"color:2\">3</span>", $str);
  3. ?>


tak żeby te dziwne tagi o który mowa powyżej interpretował tak samo jak te zwykłe
  1. tresc


Z góry dziękuje za pomoc.
Pozdrawiam

już nie ważne poradziłem sobie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

  1. <?php
  2. $str = preg_replace("#[color=(http://)?(.*?):(.*?)](.*?)[/color:(.*?)]#si", "<span style=\"color:2\">4</span>", $str);
  3. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
em1X
post
Post #2





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


Te tagi nie są dziwne. Dzięki identyfikatorom wiesz gdzie który tag się kończy.
Go to the top of the page
+Quote Post
Avatarus
post
Post #3





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

Ostrzeżenie: (0%)
-----


no teraz już wiem. Poprawiłem wszystkie "dziwne" tagi
W sumie ie taki trudny ten preg_replace (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
em1X
post
Post #4





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


Cytat(Avatarus @ 4.02.2008, 17:00:25 ) *
  1. <?php
  2. $str = preg_replace(&#092;"#(.*?)#si\", \"<span style=\"color:2\">3\", $str);
  3. ?>

<span style=\"color:\\2\">



a co to jest to color=http:// czyżbyś oczekiwał adresu w tagu koloru ?
</span style=\"color:\\2\">

Ten post edytował em1X 4.02.2008, 19:34:06
Go to the top of the page
+Quote Post
Avatarus
post
Post #5





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

Ostrzeżenie: (0%)
-----


to nie jest mój skrypt bbcode. Ja go tylko zmieniam.
Sam się zastanawiam co to jest (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
może jakieś zabezpieczenie żeby nikt nie kombinował?
Go to the top of the page
+Quote Post
em1X
post
Post #6





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


Cytat(Avatarus @ 4.02.2008, 19:39:09 ) *
może jakieś zabezpieczenie żeby nikt nie kombinował?


eh przydałby Ci się jeszcze kurs PCRE jednak (IMG:http://forum.php.pl/style_emoticons/default/Rkingsmiley.png)

może być tak:
  1. <?php
  2. $str = preg_replace('/[color=([a-z]{2,20})(:[a-z0-9]{9,15})?](.*?)[/color(:[a-z0-9]{9,15})?]/is', '<span style="color: 1">3</span>', $str);
  3. ?>
Go to the top of the page
+Quote Post
Avatarus
post
Post #7





Grupa: Zarejestrowani
Postów: 304
Pomógł: 0
Dołączył: 12.12.2006
Skąd: Pszów

Ostrzeżenie: (0%)
-----


przyda się dzięki. Nie mam po protsu na to czasu teraz. Robota, SESJA itp....a człowiek spać musi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 14:26