Just nu i M3-nätverket
Gå till innehåll

Korta av auto-länk


Wepe

Rekommendera Poster

Hej hopp!

Har en regexp-funktion som gör länkar av http:// och www. Dock kan dessa länkar ibland bli för långa så jag har försökt lägga in en left på $1 och$2 men det har inte fungerat. Scriptet har fortsatt fungera men länken har inte kortats.

 

Så här ser funktionen ut:

[log]Function FixLink(Input) 'Konverterar länkar skriven av: Ricki.nu

Dim regExp

Set regExp = New regexp

regExp.Global = true

regExp.IgnoreCase = true

 

regExp.Pattern = "(http://|www)([\S]*)"

Input = regExp.Replace(Input,"<a href=""http://"" target=""_blank"">$1$2</a>")

 

regExp.Pattern = "([\S]*@[\S]*[.se|.com|.nu|.net|.org])"

Input = regExp.Replace(Input,"<a href=""mailto:$1"" target=""_blank"">$1</a>")

 

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

Input = regExp.Replace(Input,"</a>$1 ")

 

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

Input = regExp.Replace(Input,""" target=""_blank"">$2</a>")

 

Input = Replace(Input,"http://http://","http://")

 

FixLink = Input

End Function[/log]

 

Det jag vill korta ner till typ 15 bokstäver är alltså allt som hamnar mellan taggen och sluttaggen. Någon som vet hur jag gör?

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Testa med att första matcha 0-15 tecken ur länken och därefter resten av dem. Ex. för det första uttrycket:

 

	regExp.Pattern = "(http://|www)([\S]{0,15})([\S]*)"
Input = regExp.Replace(Input,"<a href=""http://$1$2$3"" target=""_blank"">$1$2</a>")

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...