我希望获得以下文字之间的html:
<ul type="square">
</ul>
什么是最有效的方式?
答案 0 :(得分:1)
我总是使用XPath来做这样的事情 使用将提取节点的XPath,然后您可以从该节点获取InnerHTML。非常干净,是工作的正确工具。
其他详细信息:HAP Explorer是获取所需XPath的不错工具。将HTML复制/粘贴到HAP资源管理器中,导航到感兴趣的节点,复制/粘贴该节点的XPath。将该XPath字符串放在字符串资源中,在运行时获取它,将其应用于HTML文档以提取节点,从节点获取所需信息。
答案 1 :(得分:-1)
我同意HTML解析器是解决此问题的正确方法。 但是,为了幽默你,并纯粹为了学术兴趣回答你的原始问题,我建议:
/<[Uu][Ll] +type=("square"|square) *>((.*?(<ul[^>]*>.*</ul>)?)*)<\/[Uu][Ll]>/s
我确信有些情况会失败,但我想不出来,请建议/ * 他们 * /更多。
让我重申一下我不建议你在你的项目中使用它。我只是出于学术兴趣而这样做,并作为演示为什么一个解析html的正则表达式是坏事和复杂。
答案 2 :(得分:-1)
如果你真的想要一个:
@<ul type="square">(.*?)</ul>@im
答案 3 :(得分:-2)