需求:1:后端傳過(guò)來(lái)的內(nèi)容,沒(méi)有帶標(biāo)簽的URL,可點(diǎn)擊
let aLink = ''
? ? ? let checkfiles = new RegExp(/<("[^"]*"|'[^']*'|[^'">])*>/)
? ? ? let httpReg = /(https?|ftps?):\/\/(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),#]|(?:%[0-9a-fA-F][0-9a-fA-F]))+/gim // 驗(yàn)證http或者h(yuǎn)ttps
? ? ? con.filter(i => {
? ? ? ? if (!checkfiles.test(i.content)) { // 不包含標(biāo)簽元素
? ? ? ? ? if (httpReg.test(i.content)) { // 是否包含http
? ? ? ? ? ? for (let h of i.content.match(httpReg)) { // match 字符串檢索指定的值,返回一個(gè)或者多個(gè)正則表達(dá)式的匹配
? ? ? ? ? ? ? aLink = h
? ? ? ? ? ? }
? ? ? ? ? ? i.content = i.content.replace(aLink, function() {
? ? ? ? ? ? ? return (`<a href="${aLink}" target="_blank">${aLink}</a>`)
? ? ? ? ? ? })
? ? ? ? ? }
? ? ? ? }
? ? ? })
? ? ? this.dataList = con