我需要匹配所有这些开始标记:
<p> <a href="foo">
但不是这些:
<br /> <hr class="foo" />
我想出了这个,想确保我做对了。我只是捕捉到a-z。
<([a-z]+) *[^/]*?>
我相信它说:
我有那个权利吗?更重要的是,您怎么看?
您无法使用正则表达式解析[X] HTML。因为正则表达式无法解析HTML。正则表达式不是可用于正确解析HTML的工具。正如我之前在这里多次回答HTML和Regex问题一样,使用正则表达式将不允许您使用HTML。正则表达式是一种不够复杂的工具,无法理解HTML所采用的结构。HTML不是常规语言,因此无法通过常规表达式进行解析。正则表达式查询无法将HTML分解为有意义的部分。有很多次了,但是没有得到我。甚至Perl使用的增强的不规则正则表达式也无法完成解析HTML的任务。你永远不会让我崩溃。HTML是一种足够复杂的语言,无法通过正则表达式进行解析。甚至Jon Skeet也无法使用正则表达式解析HTML。每次您尝试使用正则表达式解析HTML时,这个邪恶的孩子都会哭泣处女之血,俄罗斯黑客会伪装您的Web应用程序。用正则表达式解析HTML会使灵魂陷入生活领域。HTML和正则表达式可以像爱情,婚姻和仪式杀婴一样一起使用。
您是否尝试过使用XML解析器?