js实现截取a标签的href属性和内容


    showCatalog = () => {//食堂百科-docx页面添加目录
        let docxStr = document.getElementById("docx").innerHTML,
            reg = /<a href="(.+?)">(.+?)<\/a>/gi,
            regCont = /<a[^>]*href=['"]([^"]*)['"][^>]*>(.*?)<\/a>/gi,
            nodeArr = docxStr.match(reg),//a标签的数组
            hrefArr = [],//截取出来的href属性
            codeArr = [],//截取的a标签内容
            catalogAryList = [],//目录总数据
            hrefReg = /(<a\b[^>]+\bhref=")(\S*)("[^>]*>)(.*?)(<\/a>)/;
        if (nodeArr !== null && nodeArr !== [] && nodeArr !== undefined) {
            for (let key in nodeArr) {
                let str = nodeArr[key];
                if (str.indexOf("#") >= 0) {
                    hrefArr.push((hrefReg.exec(str))[2])
                    codeArr.push((hrefReg.exec(str))[4])
                }
            }
            hrefArr.map((item, index) => {
                catalogAryList.push({
                    id: index,
                    href: item,//链接
                    msg: codeArr[index]//内容
                })
            })
            catalogObj.catalogAry = catalogAryList;
        } else {
           // console.log('empty')
        }

    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM