我需要在页面的html源代码中捕获以下标记+内容:
<li class="someClass someClass2">
... some html code ...
</li>
我不太擅长正则表达式,所以我也会感谢包含指向优秀教程的链接的评论。我一直在检查http://www.regular-expressions.info/,但我对那里的解释不太满意。
我在上面的网站上发现的是这样的:
<li\b[^>]*>(.*?)</li>
这匹配所有<li>
标签,这不是我想要的。我试着搞乱它,并测试了这个
<li class="someClass someClass[1-9]{1,1}[0-9]*">(.*?)</li>
不幸的是,这个也不能完成这项工作。第二个类的名称格式为 someClassX ,其中X来自{1,2,...}(显然,它不是一组自然数:))
我从这个正则表达式得到的是“没有匹配”。我正在使用Ubuntu,Kodos工具。
更令人沮丧的是这个正则表达式的事实:
<li class="someClass someClass[1-9]{1,1}[0-9]*">
实际上会捕获开放的<li>
标记,但仅此而已,就好像它被新行字符“分心”一样。
我仍然在谷歌寻找解决方案,如果找到的话我会在这里发布,但我也非常感谢一些有用的输入:)
THX
答案 0 :(得分:2)
这个正则表达式做你想要的(至少在Kodos ......你的里程可能会有所不同!)
<li class="someClass someClass[0-9]+">(.*\n)*?</li>