【发布时间】:2009-01-23 10:41:12
【问题描述】:
我需要一些帮助...当谈到正则表达式时,我有点(阅读总数)n00b,并且需要一些帮助来编写一个从 PHP 中查找包含在特定 HTML 标记中的特定文本。
源字符串如下所示:
<span lang="en">English Content</span><span lang="fr">French content</span> ... etc ...
我想只提取特定语言的元素文本。
谁能帮忙?
【问题讨论】:
我需要一些帮助...当谈到正则表达式时,我有点(阅读总数)n00b,并且需要一些帮助来编写一个从 PHP 中查找包含在特定 HTML 标记中的特定文本。
源字符串如下所示:
<span lang="en">English Content</span><span lang="fr">French content</span> ... etc ...
我想只提取特定语言的元素文本。
谁能帮忙?
【问题讨论】:
有很多可用于 PHP 的 HTML 解析器。我建议您查看其中之一(例如:PHP Simple HTML DOM Parser)。
尝试使用正则表达式阅读 HTML 比您想象的要容易得多,也比您希望的要避免得多(尤其是当您不完全了解正则表达式,并且您的输入不能保证是 100% 干净的 HTML)。
【讨论】:
(坏,不工作)示例说明了为什么不应该使用正则表达式来解析 html。
/<span lang="en">(.*)<\/span>/
将输出:
English Content</span><span lang="fr">French content
阅读更多内容:
For-the-2,295,485th-time-DO-NOT-PARSE-HTML-WITH-REGULAR-EXPRESSIONS
【讨论】:
【讨论】: