这是百度2018年校园招聘前端开发的一道编程题
题目大致为将文本中的http或是www开头的地址替换为URL链接:
代码如下:
<div id="jsContainer">
这里会给出一段随机文本,可能包含一些链接,比如https://www.baidu.com,或者 www.baidu.com?from=onlineExam,如果出现链接文本,请给该链接文本加上链接标签,用户点击后能直接在新窗口中打开该链接。
</div>
var container = document.getElementById("jsContainer");
var text = container.innerText;
var reg = /(http:\/\/|https:\/\/)*((\w|=|\?|\.|\/|&|-)+)/g;
var result=text.replace(reg,'<a target="_blank" href="$1$2">$1$2</a>')
container.innerHTML=result
var links=document.getElementsByTagName("a")
for(var i=0;i<links.length;i++){
var href=links[i].getAttribute("href")
if(!/^http/.test(href)){
links[i].setAttribute("href","http://"+href)
}
}