Avatar billede cyberdude Nybegynder
26. januar 2006 - 15:34 Der er 1 kommentar og
1 løsning

find værdi i streng og erstat kun hvis inden for [link]

Hejsa

Jeg har dette script :

function tagster_link($str) {
$regEx='{\[link\](.*),(.*);(.*)\[/link\]}Uis';
preg_match_all($regEx, $str, $matches);
$needel = "http://";
$str = str_replace("[link]", "<a href=\"", $str);
print_r($matches[1][0], true);
$str = str_replace(",", "\" target=\"", $str);
print_r($matches[2][0], true);
$str = str_replace(";", "\">", $str);
print_r($matches[3][0], true);
$str = str_replace("[/link]", "</a>", $str);
return $str;
}

Min streng der bliver kørt gennem funktioner kan se sådant her ud :
$tekst = "her er noget tekst, som man kan klikke [link]http://www.mitsite.dk/side2.php,_top;Her[/link] for at logge ind, men det funger ikke helt endnu.";

Det skulle gerne have givet følgende resultat (source kode):
her er noget tekst, man kan klikke <a href="http://www.mitsite.dk/side2.php" target="_top">Her</a> for at logge ind, men det funger ikke helt endnu.

Men det giver følgende resultat :
her er noget tekst" target=" man kan klikke <a href="http://www.mitsite.dk/side2.php" target="_top">Her</a> for at logge ind" target=" men det funger ikke helt endnu.

Problemet er at hver gang den støde på et , tegn bliver det erstattet med " target="
Det er korekt at den skal erstatte , tegnet med "target=" HVIS den støder på det inden for [link] [/link] tagget, eller skal den ikke erstatte det, og så vil jeg entlig også gerne have den til at kunne håndtere 2 , tegn inden for [link] [/link] tagget, hvor , nr. 1 erstattes af " target=" og , nr. 2 erstattes af \">

Men da jeg ike er den store hej i reg. exp og/eller preg_match har jeg et problem.... nogen hjælp at hente ??
Avatar billede cyberdude Nybegynder
03. februar 2006 - 16:46 #1
ingen hjælp ??
Avatar billede cyberdude Nybegynder
25. marts 2006 - 21:00 #2
Har selv løst problemet :-)
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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel