Avatar billede lordsaxo Nybegynder
03. oktober 2004 - 10:28 Der er 2 kommentarer og
1 løsning

Preg_replace problem - tag funktion

Jeg har lavet en funktion med preg_replace, så den udskifter en række tags, og KUN udskifter dem hvis de er lukkede.
Jeg har lavet den sådan her:
$hp = preg_replace("/\[qoute\](.+)\[\/qoute\]/mis", "<center><table cellpadding=\"0\" cellspacing=\"0\" class=\"qoute\"><tr><td valign=\"top\">\\1</td></tr></table></center>", $hp);

Det virker i sig selv også fint nok.. INDTIL jeg skal lave to qoutes. Eksempel:
[qoute] - [/qoute]
[qoute] - [/qoute]

Istedet for at lave 2 tabeller, laver den nu kun en! :S (Altså - den tager det første og det sidste tag :/)
Kan jeg ikke få den til at lukke ved den første den finder? Der må da være en måde, jeg kan lave funktionen så den lukker ved den første?

Håber det er nogle derude som kan svare ;)

Med Venlig Hilsen
Christian Jessen
Avatar billede limemedia Nybegynder
03. oktober 2004 - 10:44 #1
Brug af U (PCRE_UNGREEDY) modifieren bør rette dit problem, prøv således med
$hp = preg_replace(
  "/\[qoute\](.+)\[\/qoute\]/Umis",
  "<center><table cellpadding=\"0\" cellspacing=\"0\" class=\"qoute\"><tr><td valign=\"top\">\\1</td></tr></table></center>",
  $hp
);

Ref : http://dk.php.net/manual/en/reference.pcre.pattern.modifiers.php

/ LJ

PS. Du ved godt <center> forlængst i HTML sammenhæng er udfaset ? brug hellere align="center" i table tagget eller endnu bedre css ...
Avatar billede lordsaxo Nybegynder
03. oktober 2004 - 10:50 #2
Super nice, nu virker det..
Og tak for kommentaren.. Selve qoute funktionen er ikke lavet af mig, men min partner, for lang tid siden, så den er bare pastet ind i den nye funktion.. Retter lige ;)

Endnu en gang tusind tak! :D
Avatar billede limemedia Nybegynder
03. oktober 2004 - 10:52 #3
anytime mate, håber du får det til at virke
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester