[php] ubb tags terug met str_replace [newbie]

Pagina: 1
Acties:

  • smaij
  • Registratie: November 2000
  • Laatst online: 22:56
Ik ben na die domme fout van gisteren :( al een heel eind verder. nu ben ik op een verander-script, waarin de html tags weer terugmoeten naar ubb tags om vervolgens de inhoud van de string te kunnen veranderen.
Ik heb een functie gebouwd die ubb tags omzet naar html tags, en nu ben ik bezig met een functie die html tags omzet naar ubb tags.
Dat gaat erg goed tot nu toe, maar met onderstaande code be ik toch al meer dan 2 uur bezig zonder enig resultaat.
Dit stukje komt dus uit de functie die ubb tags omzet naar html tags.. hoe kan ik het omgekeerde doen?
Om het script zo snel mogelijk te maken kies ik bij het terugplaatsen voor de str_replace() functie.
code:
1
2
3
4
5
$string = eregi_replace("\\\[url\\]www.([^\\\[]*)\\\[/url\\]","<a href=\"http://www.\\1\" target=_blank>\\1</a>",$string);
 $string = eregi_replace("\\\[url\\]([^\\\[]*)\\\[/url\\]","<a href=\"\\1\" target=_blank>\\1</a>",$string);
 $string = eregi_replace("\\\[email\\]([^\\\[]*)\\\[/email\\]","<a href=\"mailto:\\1\">\\1</a>",$string);
 $string = eregi_replace("\\\[img\\]([^\"\\\[]*)\\\[/img\\]","[img]\"\\1\"[/img]",$string);
 $string = eregi_replace("\\\[thumb\\]([^\"\\\[]*)\\\[/thumb\\]","<a href=\"\\1\">[img]\"\\1\"[/img]</a>",$string);

Kan iemand mij tips geven over hoe dit aan te pakken, of misschien 1tje voordoen, ik zou er heel erg mee opschieten, want zo kom ik er niet meer uit..

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Zoeken op ubb regexp en meer van dat soort woorden zou je hier in P&W allerlei topics over ubb-codes parsen dmv "regexp" moeten opleveren, kijk ook nog bij de "preg" (perl regular expressions) functies in de manual en hopelijk zie je dan, dat dat een betere manier (niet makkelijker) is om de ubb-codes om te zetten.

De omgekeerde werking kan je daar ook vrij eenvoudig mee doen, maar als je dat kan voorkomen is dat vaak het best. Het levert vaak niet het gewenste resultaat op ;)