webForumDet fria alternativet

RegExp problem

2 svar · 266 visningar · startad av Sasch

SaschMedlem sedan nov. 2002830 inlägg
#1

Nu är jag inte så hemma på den här planen men de flesta av mina försök av att lära mig det sättet har gått åt fanders. Nå väl, men som det är nu så har jag problem med "<????>". Jag har lyckats få "<???>" att fungera eftersom det bygger på en ganska enkel princip...

Detta fungerar ;)

     Set objRE = New RegExp
     objRE.Global = True
     objRE.IgnoreCase = True
          objRE.Pattern="\[url\]([\w\W]*?)\[/url\]"
          Str = objRE.Replace(Str,"<a href=""$1"">$1</a>")
     Set objRE = Nothing

Eftersom jag tycker att det är lite behändigt att leta efter skript som man kan modifiera efter behov då jag inte har så stora kunskaper inom ämnet så hittade jag voigtann1's script som jag tänkte att det här måste ju gå att modifiera... Men icke.

     Set objRE = New RegExp
     objRE.Global = True
     objRE.IgnoreCase = True
             Str = Server.HTMLEncode(Str)

             objRE.Pattern = "\[.url=(&amp;&quot;)?(http://)?(.*?)\$1\](.*?)\[\/url\]"
             Str = objRE.Replace(Str,"<a href=""http://$3"" target=""_blank"">$4</a>")

      Set objRE = Nothing

Som ni ser så är det lite omgjort. Jag förstår inte varför det behöver användas "htmlEncode" överhuvudtaget? (Det finns en HTMLEncode i samma sträng där jag anropar regexp-funktionen)

Response.Write ( bbCode(Server.HTMLEncode(rsOpenThread("Body"))) )

Vore väldigt tacksam för hjälp istället för "Lär dig RegExp istället" och liknande. Jag vet att jag borde sätta mig ner och hårdplugga och jag har försökt men inte kommit särskilt långt...

Fredde MannenMedlem sedan nov. 20014 054 inlägg
#2

ta bort ena server.htmlencode och kolla om det funkar sen.

Jag vet inte riktigt vad det inte är som fungerar..

SaschMedlem sedan nov. 2002830 inlägg
#3

Nu ser det ut så här men det fungerar fortfarande inte...

     Set objRE = New RegExp
     objRE.Global = True
     objRE.IgnoreCase = True

             objRE.Pattern = "\[.url=(&amp;&quot;)?(http://)?(.*?)\$1\](.*?)\[\/url\]"
             Str = objRE.Replace(Str,"<a href=""http://$3"" target=""_blank"">$4</a>")

      Set objRE = Nothing

Testade med denna (Tog bort ett "\" i "[\/url\]") så det ser ut som "[/url\]", men det är fortfarande inte funktionabelt...

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