webForumDet fria alternativet

RegExp strul

5 svar · 257 visningar · startad av Asa

AsaMedlem sedan dec. 20011 860 inlägg
#1

Har denna kod

   '#====================================================#
   '                      Skapad av: Ricki @ Ricki.nu Copyright 2002
   '#====================================================#

   Set regExp = New regexp

   regExp.Global = true
   regExp.IgnoreCase = true

   regExp.Pattern = "([url]http://[/url]|www)([\S]*)"
   strText = regExp.Replace(strText,"<a href=""http://$1$2"" target=""_blank"">$1$2</a>")

   regExp.Pattern = "([url]ftp://[/url])([\S]*)"
   strText = regExp.Replace(strText,"<a href=""$1$2"" target=""_blank"">$1$2</a>")

   regExp.Pattern = "([\S]*@[\S]*[.se|.com|.nu|.net|.org])"
   strText = regExp.Replace(strText,"<a href=""mailto:$1"" target=""_blank"">$1</a>")

   regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)</a> "
   strText = regExp.Replace(strText,"</a>$1 ")

   regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)"" target=""_blank"">([^<]*)</a>"
   strText = regExp.Replace(strText,""">$2</a>")

   regExp.Pattern = "\[url=(.*)\](.*)\[/url\]" 
   strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"">$2</a>")

Men nu är det så att inte den grejen funkar ihop med det andra! Nån som har nå förslag på hur jag ska göra?

voigtann1Medlem sedan juni 20019 519 inlägg
#2

prova detta:
byt plats med url= saken och plasera den längst upp på din kod:

   '#====================================================#
   '                      Skapad av: Ricki @ Ricki.nu Copyright 2002
   '#====================================================#

   Set regExp = New regexp

   regExp.Global = true
   regExp.IgnoreCase = true

[b]
   regExp.Pattern = "\[ url=(.*)\](.*)\[/url\]" 
   strText = regExp.Replace(strText, "<a href=""$1"" target=""_blank"">$2</a>")[/b]

   regExp.Pattern = "([url]http://[/url]|www)([\S]*)"
   strText = regExp.Replace(strText,"<a href=""http://$1$2"" target=""_blank"">$1$2</a>")

   regExp.Pattern = "([url]ftp://[/url])([\S]*)"
   strText = regExp.Replace(strText,"<a href=""$1$2"" target=""_blank"">$1$2</a>")

   regExp.Pattern = "([\S]*@[\S]*[.se|.com|.nu|.net|.org])"
   strText = regExp.Replace(strText,"<a href=""mailto:$1"" target=""_blank"">$1</a>")

   regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)</a> "
   strText = regExp.Replace(strText,"</a>$1 ")

   regExp.Pattern = "([.|,|!|?|:|;|)|\|&]]*)"" target=""_blank"">([^<]*)</a>"
   strText = regExp.Replace(strText,""">$2</a>")

och ändra din url=(.*) till url=(http://|www)([\S]*)
så kan det fungera =)
'

obs jag har lagt till ett mellanslag " " på [url=...

AsaMedlem sedan dec. 20011 860 inlägg
#3

Verkar inte funka! http://forum.gruvsjo.com kan du testa!

m_soderlundMedlem sedan sep. 20026 425 inlägg
#4

Åsa; har du gjort forumet själv? Det verkar i alla fall bra!

AsaMedlem sedan dec. 20011 860 inlägg
#5

Har gjort det själv! Tackar :)

voigtann1Medlem sedan juni 20019 519 inlägg
#6

en annan lösning är när en person lägger in inlägget så konventerar du med regexp så att http:// blir [ url=http://]

kontakta mej på ICQ så kan vi nog lösa detta snabbt och enkelt

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)