SweyMedlem sedan apr. 20003 971 inlägg Tjo
Jag vill översätta html-taggar från , [kod] osv.. till dess HTML-motsvarighet.
Detta fungerar
$str = eregi_replace( '(\[\])(.+)(\[/b\])', '<b>\2</b>', $str );
men kan man inte slå in allting i samma uttryck på något sätt?
Ungefär som detta
$str = eregi_replace( '(\[)([b|i|u])(\])(.+)(\[\2)(\])', '<\2>\4</\2>', $str );
Men detta fungerar inte. \2 kan tydligen inte användas i söksträngen (markerat blått). Vad göra?
Har använt ' istället för " för göra koden mer lättläst
Danke!
------------------
- Swey
Projekt wF PHP
[Redigerat av Swey den 15 jul 2000]
Ar inte du en sys admin till WebForum.
I sa fall sa borde du har tillgong till Source'en till detta forum.
Leta dar.
------------------
peterbe.com
emissionMedlem sedan dec. 19996 721 inlägg Nej, UBB söker upp varje tagg för sig (gjorde det sist jag kollade, i alla fall).
I princip är det möjligt, men det är svårt att beskriva att sluttaggen ska vara samma som starttaggen.
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
[Redigerat av emission den 20 jul 2000]
SweyMedlem sedan apr. 20003 971 inlägg varför är det svårt?
------------------
- Swey
Projekt wF PHP
emissionMedlem sedan dec. 19996 721 inlägg Därför att jag inte kan komma på hur det funkar i PHP. Det är lätt i Perl. Tillåt mig klura en stund...Klart man kan använda perlstyle regexp förstås...
I Perl kan man t.ex. köra
$str =~ s#\[(i|b)\](.+?)(\[/\1\])#<$1>$2</$1>#gis;
SweyMedlem sedan apr. 20003 971 inlägg men hur löser man det med preg_replace?
------------------
- Swey
Projekt wF PHP
emissionMedlem sedan dec. 19996 721 inlägg Så här:
$str = preg_replace("/\[(i|b|u)\](.+)\[\/\\1\]/", "<\\1>\\2</\\1>", $str );
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB