Php 清除数据库转储的正则表达式

Php 清除数据库转储的正则表达式,php,regex,Php,Regex,几个小时后,我真的绝望了。 我有一个数据库转储,里面有大量的inlinestyles和不推荐使用的html标记 用什么正则表达式才能得到这个espression style="margin: 0cm 0cm 0pt;mso-layout-grid-align: none" class="MsoNormal"> 那意味着我想得到一份工作。 1.从单词style开始 2.抓住中间的一切 3.停止使用结束括号这个怎么样 preg_match('#style=".+?"\s*>#');

几个小时后,我真的绝望了。 我有一个数据库转储,里面有大量的inlinestyles和不推荐使用的html标记

用什么正则表达式才能得到这个espression

style="margin: 0cm 0cm 0pt;mso-layout-grid-align: none" class="MsoNormal">
那意味着我想得到一份工作。 1.从单词style开始 2.抓住中间的一切 3.停止使用结束括号

这个怎么样

preg_match('#style=".+?"\s*>#');

尝试以下操作:
preg\u replace('/style=“[^>]+>/”,'',$string)

您的意思可能是preg\u replace('style=“.+?”\s*>)?工作完美,节省了我很多时间。非常感谢。这不是更好的方式。因为,有些内容丢失了…我认为你的问题是报价问题。在插入数据库之前,你可以使用
mysql\u real\u escape\u string
此函数来清理内容。或者你可以通过数据库中的
报价问题进行谷歌搜索。
@rony Linsener检查更新。正确的使用方法是
preg_replace('/style=“[^>]+>/”,“”,$string)
preg_replace('style=“[^>]+>”,“”,$string)
不是正确的方法。。