C# : Transformer une url contenu dans un texte brut en sa forme <a href>
Pour ceux qui souhaiteraient intégrer un texte dans une page html et transformer les éventuelles url contenues dans ce texte en url directement cliquable, sous leur forme
Code:
<a href="monurl">monurl</a>
voici une méthode qui valide toute forme d'url possible :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| public static string UrlReformate(string rawtext)
{
string re1 = "((?:http|https|ftp)(?::\\/{2}[\\w]+)(?:[\\/|\\.]?)(?:[^\\s\"]*))";
Regex r = new Regex(re1, RegexOptions.IgnoreCase | RegexOptions.Singleline);
//MatchEvaluator match;
string result = r.Replace(rawtext, delegate(Match m)
{
return "<a href='" + m.Value + "'>" + m.Value + "</a>";
//return System.Web.HttpUtility.HtmlEncode(m.Value); //ne donne pas le résultat escompté, l'url reste une chaine brute non cliquable
});
return result;
} |