这几天在写一个小程序的时候,需要用到正则表达式匹配用户输入文本中的URL地址,然后将URL地址替换成可以点击的链接。URL地址的匹配,我想这应该是大家在做验证处理中常会用到的,这里就把我整合的一个比较完整的表达式给出来:
var URL = /(https?:\\/\\/|ftps?:\\/\\/)?((\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})(:[0-9]+)?|(localhost)(:[0-9]+)?|([\\w]+\\.)(\\S+)(\\w{2,4})(:[0-9]+)?)(\\/?([\\w#!:.?+=&%@!\\-\\/]+))?/ig;
这个表达式可以匹配 http,https,ftp,ftps以及IP地址的URL地址。还算是URL地址匹配计较完善的。利用这个表达式我写了两个小函数,将用户留言的URL地址替换成可点击的链接,没有什么太难的,就是利用JavaScript 的 replace() 函数来实现替换 URL 为 link:
JavaScript版:
/**
* JavaScrit 版本
* 将URL地址转化为完整的A标签链接代码
*/
var replaceURLToLink = function (text) {
text = text.replace(URL, function (url) {
var urlText = url;
if (!url.match(\'^https?:\\/\\/\')) {
url = \'http://\' + url;
}
return \'\' + urlText + \'\';
});
return text;
};
本文地址:https://www.stayed.cn/item/8791
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我