• Js 正则获取Html元素


    var html = $("#summaryTemplate").html();
                var imageMath = /<img [^<,>]*(?=target-type=("|')replace("|'))[^/,<,>]*/>/;
                var scriptMath = /<script [^<,>]*(?=target-type=("|')replace("|'))[^/,<,>]*></script>/;
                var linkMath = /<link [^<,>]*(?=target-type=("|')replace("|'))[^/,<,>]*/>/;
                alert(html.match(imageMath));
    var ht="<img src='/11.jpg' target-type='replace' />asf      <img src='/12.jpg' target-type='replace' />                <img src='/13.jpg' target-type='replace' />"
    
    ht.match(imageMath)

    为什么Math返回的数组不是 多个Img对象,而是

    ["<img src="/11.jpg" target-type='replace' />", "'", "'"]
    不明白。。。。
     
    后来验证是我的错,正则中 有g配置,是否下移至下一个目标。
     
    正确
      var attrbuteMath = "(?:\w+)\s*(?:=[^{,},<,>]+)";
                var srcMath = "src(?:=[^{,},<,>]+)";
                var hrefMath = "href(?:=[^{,},<,>]+)";
                var scriptMath = "<script\s+(?:" + attrbuteMath + ")*></script>";
                var ge = new RegExp(scriptMath,"gi");
                // var html = "<script  asdfsadf='asdfsaf' asf=aaadsdfsdf  style='' src=''  ></script>asdfsaf<script  asdfsadf='asdfsaf' asf=''aa adsdfsdf    ></script>";
                var html = $("#txtHtml").val();
                var result = ge.exec(html);
                alert(result);

    g表示要搜索字符串出现的,而不是找到第一个匹配后就停止。如果还要模式不区分大小写
      ,可以给第二个参数添加字符 i  

  • 相关阅读:
    【Leetcode】23. Merge k Sorted Lists
    【Leetcode】109. Convert Sorted List to Binary Search Tree
    【Leetcode】142.Linked List Cycle II
    【Leetcode】143. Reorder List
    【Leetcode】147. Insertion Sort List
    【Leetcode】86. Partition List
    jenkins 配置安全邮件
    python 发送安全邮件
    phpstorm 同步远程服务器代码
    phpUnit 断言
  • 原文地址:https://www.cnblogs.com/shikyoh/p/3583707.html
Copyright © 2020-2023  润新知