美文网首页
正则匹配html内容

正则匹配html内容

作者: 姜治宇 | 来源:发表于2023-02-28 16:23 被阅读0次

    分组捕获

    1、(exp)

    匹配exp,并捕获文本到自动命名的组里

    2、(?<name>exp)

    匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)

    3、(?:exp)

    匹配exp,但不捕获匹配的文本

    位置指定

    1、(?=exp)

    匹配exp前面的位置

    2、(?<=exp)

    匹配exp后面的位置

    3、(?!exp)

    匹配后面跟的不是exp的位置

    4、(?<!exp)

    匹配前面不是exp的位置

    实战

    我们比较常用的,是分组捕获里面的1和3,结合位置指定的1和2,位置指定最为重要。
    比如要提取a标签的href内容,我们必须知道待提取内容的前、后都是什么?

    //正则 ?<= 和 ?= 用法
    const str = '<a target=_blank href="www.baidu.com">百度一下</a>';
    const reg = /(?<=(?:href=")).+(?=(?:">))/;
    const arr = str.match(reg);
    if(arr && arr[0]){
        console.log(arr[0]);
    }
    

    参考文章:https://www.cnblogs.com/mol1995/p/10927279.html

    相关文章

      网友评论

          本文标题:正则匹配html内容

          本文链接:https://www.haomeiwen.com/subject/apulldtx.html