我需要匹配所有这些开始标签:
<p>
<a href="foo">
但不是这些:
<br />
<hr class="foo" />
我想出了这个,想确保我做对了。我只捕获 a-z
。
<([a-z]+) *[^/]*?>
我相信它说:
- 找到一个小于,然后
- 查找(并捕获)az 一次或多次,然后
- 找到零个或多个空格,然后
- 查找任何字符零次或多次,贪心,除了
/
,然后 - 找到一个大于
我有这个权利吗?更重要的是,你怎么看?
原文由 Jeff 发布,翻译遵循 CC BY-SA 4.0 许可协议
您不能使用正则表达式解析 [X]HTML。因为 HTML 不能被正则表达式解析。 Regex 不是可以用来正确解析 HTML 的工具。正如我之前多次在 HTML 和正则表达式问题中回答的那样,使用正则表达式将不允许您使用 HTML。正则表达式是一种不够复杂的工具,无法理解 HTML 使用的结构。 HTML 不是常规语言,因此不能用正则表达式解析。正则表达式查询无法将 HTML 分解成有意义的部分。很多次了,但我不明白。即使是 Perl 使用的增强型不规则正则表达式也无法胜任解析 HTML 的任务。你永远不会让我崩溃。 HTML 是一种足够复杂的语言,它不能被正则表达式解析。甚至 Jon Skeet 也无法使用正则表达式解析 HTML。每次您尝试使用正则表达式解析 HTML 时,邪恶的孩子都会哭泣处女的鲜血,而俄罗斯黑客则会攻击您的 Web 应用程序。使用正则表达式解析 HTML 将受污染的灵魂召唤到生活的领域。 HTML 和正则表达式就像爱情、婚姻和仪式杀婴一样相得益彰。
inal snuf
男人的谎言的证明 ALL IS LOŞ͖̩͇̗̪̏̈́T A LL I SL OST the pon̷y he come s he c̶̮om es he come me s t he ich or permeat es all MY fac e我的脸ᵒhod n o no no no no the top ofθ 停止了—- 924c9f57d7d7f0da702801ce3d26e9b140͎a̧͈͖r̽̾̈́͒͑e
您是否尝试过使用 XML 解析器?