[关闭]
@Wangww0925 2019-08-07T07:57:08.000000Z 字数 1270 阅读 198

url 转成a链接

js


  1. // url 转成a链接
  2. function getUrl(str){
  3. // 全局匹配带http:// 或 https://开头的
  4. var reg = /(?:(http:\/\/|https:\/\/))(?:([\w\.]+))[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/gi
  5. if(str.match(reg)){
  6. str = getReg(str,reg)
  7. }else{
  8. var reg1 = /[\w]+\.[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/gi;
  9. str.match(reg1) ? str = getReg(str,reg1) : ''
  10. }
  11. console.log(str);
  12. return str
  13. }
  14. // 替换成a链接
  15. function getReg(str,reg){
  16. if(!str){
  17. return ""
  18. }
  19. str = str.replace(reg, function (){
  20. return '<a href="' + arguments[0] + '" >' + arguments[0] + '</a>'
  21. })
  22. return str
  23. }
  24. getUrl("www.baidu.com"); // <a href="www.baidu.com" >www.baidu.com</a>
  25. getUrl("baidu.com"); // <a href="baidu.com" >baidu.com</a>
  26. getUrl("baidu.cn"); // <a href="baidu.cn" >baidu.cn</a>
  27. getUrl("https://www.baidu.com"); // <a href="https://www.baidu.com" >https://www.baidu.com</a>
  28. getUrl("asdhttps://www.baidu.com"); // asd<a href="https://www.baidu.com" >https://www.baidu.com</a>
  29. getUrl("fgfh https://www.baidu.com dsfds"); // fgfh <a href="https://www.baidu.com" >https://www.baidu.com</a> dsfds
  30. getUrl("fgfhhttps://www.baidu.comdsfds"); // fgfh<a href="https://www.baidu.comdsfds" >https://www.baidu.comdsfds</a>
  31. getUrl("adswww.baidu.com"); // <a href="adswww.baidu.com" >adswww.baidu.com</a>
  32. getUrl("https://www.baidu.comdsfds"); // <a href="https://www.baidu.comdsfds" >https://www.baidu.comdsfds</a>

作者 wendy
2019 年 6月 5日

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注