まずはコチラが関数です。
function addAutoLink(str) {
var regexp_url = /((?<!href="|href='|src="|src=')(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return str.replace(regexp_url, "<a href='$1' target='__blank'>$1</a>");
}
var regexp_url = /((?<!href=”|href=’|src=”|src=’)(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
これは、http, httpsで始まる文字列で、直前がhref=”でない(aタグ内では無い)文字列を探す正規表現
そして
return str.replace(regexp_url, “<a href=’$1′ target=’__blank’>$1</a>”);
で<a … ></a>置換した文字列を返しています。$1がマッチした文字列です。