2011-06-10 76 views
0

嗯,我总是有很多贫困与正则表达式或正则表达式,所以我要求帮助。PHP干净的HTML正则表达式

我试图探索浏览器的HTML编辑功能,但大多数时候,我得到的东西我不需要,像这样的

<div style="text-align: left;"><span style="font-size: small;"><font face="verdana"><br></font></span></div> 

有人能这么漂亮给我提供一个正则表达式把它变成只有<br>

理想的交易是如果可能有一个处理不同的组合像字体的脸可能不是verdana和文本对齐的风格可能是每个示例的中心。

在此先感谢。

Pluda

+4

不要使用正则表达式来解析HTML。这是一个非常好的帖子,关于如何正确地做到这一点:http://stackoverflow.com/questions/3650125/how-to-parse-html-with-php – Cfreak 2011-06-10 16:28:56

+0

你如何决定你想保留什么,以及你想要什么剥离?我在这里看到的唯一真实的事情是''已被弃用,不应该在你的html中。 – bdares 2011-06-10 16:29:04

+0

如果你真的想明白你为什么不应该尝试用正则表达式解析(x)html:http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained - 标记 – afarazit 2011-06-10 16:55:23

回答

1

正则表达式是不正确的路径,由于其解析HTML限制。

我认为你最好看看strip_tags()。特别使用第二个参数标签允许。但是,确定要移除和保留哪些标签可能会很困难。如果情况确实如此,您可能需要更新您的问题。

0

如果你想用一个简单的br标签去除固定的HTML汤的积累,那么正则表达式可能是可行的。然而,我没有看到这里的困难。您的字符串本身不包含元字符。因此,您只需要用\w+[\w\s]+等占位符替换leftVerdana,并将所有内容都放入分隔符中,如#

+0

我想我会去第一个答案的链接,但是,请你给我一个例子吗?真的,我不知道如何应用这个\ w \ s。谢谢 – Pluda 2011-06-10 16:58:40