• JAVASCRIPT > remplacer les liens dans une chaine par des balises URL

      Si dans une chaine, il y a des http://www.site.com , voici comment les transformer en liens HTML du genre <a href="http://www.site.com">http://www.site.com</a>.

       

       

      function txt_to_url(input){
         return input
         .replace(/(ftp|http|https|file):\/\/[\S]+(\b|$)/gim,'<a href="$&">$&</a>')
         .replace(/([^\/])(www[\S]+(\b|$))/gim,'$1<a href="http://$2">$2</a>');
      }

       

       

      ATTENTION, les sauts de ligne <BR> peuvent provoquer des erreurs. Il faut les remplacer par un vrai saut de ligne \n

       

      function txt_to_url(input){
         return input
         .replace(/<br>/gim, '\n')
         .replace(/(ftp|http|https|file):\/\/[\S]+(\b|$)/gim,'<a href="$&">$&</a>')
         .replace(/([^\/])(www[\S]+(\b|$))/gim,'$1<a href="http://$2">$2</a>')
         .replace(/\n/gim, '<br>');
      }

       

       

      Cela se concerne que les protocoles FTP, HTTP, HTTPS, et file. Pour englober tous les protocoles, on peut remplacer la ligne :

       

      .replace(/(ftp|http|https|file):\/\/[\S]+(\b|$)/gim,'<a href="$&">$&</a>')

       

      par

       

      .replace(/(\w+):\/\/[\S]+(\b|$)/gim,’<a href="$&">$&</a>’)

 

Aucun commentaire

 

Laissez un commentaire