获取网页源码中的指定内容,源码内容包含...<div class="result">...</div>
任务是获取 这个div的innerHTML,该div内有嵌套的多个子div。网上找到一个类似的正则 <(?<HtmlTag>[\w]+)[^>]*\s[class]=(?<Quote>["']?)result(?(Quote)\k<Quote>)[^>]*?(/>|>((?<Nested><\k<HtmlTag>[^>]*>)|</\k<HtmlTag>>(?<-Nested>)|.*?)*</\k<HtmlTag>>),用于捕获id =footer 的div的内容。但是我连转义都不会,脚本执行出错,更别说要修改为符合我的正则了。
正则表达式html  js javascript

解决方案 »

  1.   


    MatchCollection mc = Regex.Matches(yourStr,@"(?<=<div[^>]*>\s*)(?![\r\n])((?!</div>).)+"); 
    foreach(Match m in mc) {     
    m.Value就是你要的 
    }
      

  2.   

    我的意思是 只获取 <div class="result">这个指定的div的html代码,这个div内还有很多子div,楼上的,你确定吗?
      

  3.   

    用正则嵌套匹配比较麻烦。
    不能直接取.innerHTML么?
      

  4.   


    我用ajax请求得到的html源码。
      

  5.   

    是不是要获取<div class="result">的innerHTML?如果是的话直接判断class并读取innerHTML即可。
      

  6.   

    我用ajax请求得到的html源码,不是运行在浏览器的源码。
    即  var html = xmlhttp.responseText;
    html是整个网页的源码,我要把 里面内容部分提取出来
      

  7.   

    你可以把 var html=""字符串转成html对象,比如使用jquery $(html) 然后使用find(".result").html()即可获取innerHTML