Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]preg_replace() nie działa.
LewyM1
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Witam.
Mam taki problem z preg_replace(), że funkcja działa tylko wtedy tylko jak ciąg znaków jest tylko w jednej linii, a dokładniej:

Kod
[b]Blablalba[/b] (działa)
_________________
[b]blablabla
blalbabla[/b] (nie działa)


Może to wina (*.)?
Szukałem w wyszukiwarce google i niczego nie znalazłem.

Tutaj funkcja:
Kod
<?php
    function bbcode($tekst) {
        // podstawowe BBCODE
        $tekst = preg_replace("/\[color=(red|green|blue)\](.*)\[\/color\]/i", "<span style=\"color: \\1;\">\\2</span>", $tekst);
        $tekst = preg_replace("/\[b\](.*)\[\/b\]/i", "<span class=\"bold\">\\1</span>", $tekst);
        $tekst = preg_replace("/\[u\](.*)\[\/u\]/i", "<span class=\"underline\">\\1</span>", $tekst);
        $tekst = preg_replace("/\[i\](.*)\[\/i]/i", "<span class=\"italic\">\\1</span>", $tekst);
        $tekst = preg_replace("/\[center\](.*)\[\/center]/i", "<div class=\"center\">\\1</div>", $tekst);
        $tekst = preg_replace("/\[code\](.*)\[\/code]/i", "<code>\\1</code>", $tekst);
        
        // zdjecia
        $tekst = preg_replace("/\[img\](.*)\[\/img]/i", "<img src=\"\\1\" alt=\"\" />", $tekst);
        
        // linki
        $tekst = preg_replace("/\[url\](.*)\[\/url]/i", "<a href=\"\\1\" target=\"_blank\">\\1</a>", $tekst);
        $tekst = preg_replace("/\[url=(.*)\\](.*)\[\/url]/i", "<a href=\"\\1\" target=\"_blank\">\\2</a>", $tekst);
        
        return $tekst;
    }
    $tekst="[b]blablabla[/b]\n[b]blablalba\nblablabla[/b]";
    echo bbcode($tekst);
?>

Pozdrawiam Lewy.
Go to the top of the page
+Quote Post
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


A może spróbujesz gotowca? Parser BB-Code

Co do samego pytania, musisz dodać po jeszcze modyfikator "s".
Go to the top of the page
+Quote Post
LewyM1
post
Post #3





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Fajnie, że ktoś już napisał gotowiec, ale ja sam chciałbym spróbować. A ten modyfikator s to po (*.)?
Go to the top of the page
+Quote Post
Fifi209
post
Post #4





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


na końcu po "i"

http://pl2.php.net/manual/en/reference.pcr...n.modifiers.php

Odsyłam, zobacz o co chodzi ;p
Go to the top of the page
+Quote Post
LewyM1
post
Post #5





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Cytat(fifi209 @ 11.04.2011, 07:51:41 ) *

Właśnie tego szukałem! (IMG:style_emoticons/default/smile.gif)
Dzięki bardzo fifi209 za pomoc. (IMG:style_emoticons/default/wink.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: 22.08.2025 - 21:02