Générer les liens d'urls à partir d'un texte simple

Soyez le premier à donner votre avis sur cette source.

Snippet vu 9 635 fois - Téléchargée 38 fois

Contenu du snippet

Ce code permet entre autre à partir d'un texte simple (non formaté HTML) de générer les liens en ASP.

Source / Exemple :


<%
    function LinkURLs(ByRef asContent)
    	Dim loRegExp
    	
    	if asContent = "" Then Exit function
    	Set loRegExp = New RegExp		
    	loRegExp.Global = True
    	loRegExp.IgnoreCase = True
    	loRegExp.Pattern = "((ht|f)tps?://\S+[/]?[^\.])([\.]?.*)"
    	LinkURLs = loRegExp.Replace(asContent, "<A href=""$1"">$1</A>$3")
    	loRegExp.Pattern = "(\S+@\S+.\.\S\S\S?)"
    	LinkURLs = loRegExp.Replace(LinkURLs, "<A href=""mailto:$1"">$1</A>")
    	Set oRegExp = Nothing
    	
    End function
%>

Conclusion :


Pour mieux vous convaincre, testez ceci :

<% Dim Text
Text = "le site http://www.google.com est un moteur de recherche"

Text = LinkURLs (Text)
response.write (Text)
%>
Ceci va afficher le texte comportant l'url :
le site <A href="http://www.google.com">http://www.google.com</a> est un moteur de recherche

A voir également

Ajouter un commentaire Commentaires
Messages postés
25
Date d'inscription
mardi 24 juillet 2001
Statut
Membre
Dernière intervention
13 décembre 2007

;-)
Messages postés
2
Date d'inscription
vendredi 15 mars 2002
Statut
Membre
Dernière intervention
15 mars 2002

Bon, le code proposé est génial et utilise des fonctions que je ne connais meme pas MAIS il y a des problemes quand il y a des tags style
et autour des adresses alors je me suis permis d'ajouter ma contribution... maintenant ça marche nickel :-) A+

Function LinkURLs(ByRef asContent)
Dim loRegExp

If asContent = "" Then Exit Function
asContent = replace(asContent,"
","
")
asContent = replace(asContent,""," ")
Set loRegExp = New RegExp
loRegExp.Global = True
loRegExp.IgnoreCase = True
loRegExp.Pattern = "((ht|f)tps?://S+[/]?[^.])([.]?.*)"
LinkURLs = loRegExp.Replace(asContent, "[ $1] $3")
loRegExp.Pattern = "(S+@S+..SSS?)"
LinkURLs = loRegExp.Replace(LinkURLs, "[ $1]")
Set oRegExp = Nothing

End Function

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.