webForumDet fria alternativet

Skapa länkar och låta länkar vara.

Webbutveckling

3 svar · 439 visningar · startad av yohpops

Medlem sedan feb. 20011 198 inlägg
Frågan#1

Hej.

Jag använder denna koden för att skapa länkar i text.

v_ret = Regex.Replace(v_ret,"(http://|https://|ftp://)(\\S)(\\S+)","<a href=\"$1$2$3\" target=\"_blank\">$2$3</a>",RegexOptions.IgnoreCase);

Den fungerar bara om länken inte är en riktig länk utan bara text.
Ex. http://www.webforum.nu.

Hur gör jag för att den ska skippa riktiga länkar i texten?
Ex.

<a href="http://www.webforum.nu">webForum</a>
Medlem sedan feb. 2000438 inlägg
#2

Borde gå att lösa med (?<!...) (matcha om det inte föregås av ...) på något sätt... Kanske:

v_ret = Regex.Replace(v_ret,"(?<!href=\")(http://|https://|ftp://)(\\S)(\\S+)","<a href=\"$1$2$3\" target=\"_blank\">$2$3</a>",RegexOptions.IgnoreCase);
Medlem sedan feb. 20011 198 inlägg
#3

Ska testa.

Medlem sedan feb. 20011 198 inlägg
#4

Just (?<!href=\") funkade inte.
Men jag fortsätter testa på samma spår..

618 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
266 ms — deklarationer (db)
125 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)
357 ms — ändringar (db)