Html 将页面源标记与正则表达式匹配
我试图用regex从页面源捕获标记。 经过一段时间的努力,我发现很难确定。 下面是一个HTML源的示例:Html 将页面源标记与正则表达式匹配,html,regex,Html,Regex,我试图用regex从页面源捕获标记。 经过一段时间的努力,我发现很难确定。 下面是一个HTML源的示例: <div class="searchBx"> <div> <li><a href="/" class="on">somthing</a></li> </div> </div> <div> <li><a href="/" class="on">somth
<div class="searchBx">
<div>
<li><a href="/" class="on">somthing</a></li>
</div>
</div>
<div>
<li><a href="/" class="on">somthing2</a></li>
</div>
我试图只捕获(div class=“searchBx”)标记和其中的标记
这很难,因为它总是抓住他身后的div标签。
结果应该是:
<div class="searchBx">
<div>
<li><a href="/" class="on">somthing</a></li>
</div>
</div>
非常感谢。regex不可能与您提到的div相匹配 由于div包含另一个div,因此本质上它将无法区分其中的
标记和关闭您希望匹配的div的
标记
<div class="searchBx">
<div>
<li><a href="/" class="on">somthing</a></li>
</div> <!-- This -->
</div> <!-- and this are the same to regex -->
<div>
<li><a href="/" class="on">somthing2</a></li>
</div>
下面是发生的情况:
对于您需要做的事情,您必须在您使用的任何语言中使用DOM解析器
另外,但每个人都会这样做。您在源代码中提到的这个div类“隐藏”在哪里。还有,看看标题中的第一个单词“匹配”会更好吗?Jeff Dean可以用常规表达式解析HTML我想接下来的自然问题是“谁是Jeff Dean?”而且,我不是说这是不可能的,只是不是很好的练习。抱歉,我只是忍不住写了出来。这是一个笑话:正则表达式确实不适合html解析(请参阅以供参考)。杰夫·迪恩是一位著名的谷歌工程师,在互联网上以“杰夫·迪恩的事实”(类似于应用于计算机科学的查克·诺里斯事实)而广为人知。看看你是否想找点乐子哦好吧伙计。。。我想我有时候有点太严肃了!;)好笑话!