leeiio.me/url-in-text-regexp/
var text="你好,我是一段文本。我链接到http://leeiio.me/test.html请大家多多指教。";var regexp=/((http|ftp|https|file):\/\/([\w\-]+\.)+[\w\-]+(\/[\w\-\.\/?\@\%\!\&=\+\~\:\#\;\,]*)?)/ig;
text=text.replace(regexp, "<a href='$1'> $1 <a>");
console.log(text);
但是如果URL中有中文呢?虽然我们不应该用中文作为URL的一部分,已经把中文部分encode掉,但是很多人比如粗心的写wordpressd的人,通常不指定Slug,那么很多URL自然也就带上了标题的中文了。可以改成:
var regexp=/((http|ftp|https|file):\/\/([\w\-]+\.)+[\w\-]+(\/[\w\u4e00-\u9fa5\-\.\/?\@\%\!\&=\+\~\:\#\;\,]*)?)/ig;
但是如果有日语呢?韩语呢?所以。。。
自己改进到更加适配的版本: