0

首先,我知道使用正则表达式进行 HTML 解析是不好的做法,但我正在开发一个移动应用程序,所以大小和简单性很重要。此外,要求非常简单。

HTML 标签:(<td width=100>Capture This</td>标签可以是 td/span/etc,属性也一样,例如 height/style/etc。)

我应该使用什么正则表达式来获取“捕获这个”部分?

4

2 回答 2

1

Regex解析 HTML 的糟糕选择,尤其是来自不同来源的解析。

我建议使用专门构建的解析器,例如HTML Agility Pack

什么是 Html Agility Pack (HAP)?

这是一个敏捷的 HTML 解析器,它构建一个读/写 DOM 并支持普通的 XPATH 或 XSLT(实际上你不必了解 XPATH 或 XSLT 就可以使用它,不用担心......)。它是一个 .NET 代码库,允许您解析“网络之外”的 HTML 文件。解析器对“真实世界”格式错误的 HTML 非常宽容。对象模型与 System.Xml 的提议非常相似,但用于 HTML 文档(或流)。

源代码下载附带了一堆示例项目,因此您可以了解如何使用它。

于 2012-08-30T11:57:01.117 回答
1

如果要匹配可以具有属性但没有子节点的某个元素,请使用

/<td(?:\s[^<>]+)?>([^<>]*)<\/td>/

并获得捕获的组。

于 2012-08-30T12:00:07.360 回答