如何使用PHP从HTML中删除所有样式?
可能重复:如何使用PHP从HTML中删除所有样式?,php,Php,可能重复: $input='text'; // ... 这里有些代码,可能是正则表达式 $desired_输出='text'; 如何使用PHP执行上述操作?尝试以下操作,您需要一个正则表达式将其删除 $desired_output = preg_replace('/<\s*style.+?<\s*\/\s*style.*?>/si', ' ', $input ); 我不想删除所有属性,我只想删除“style”属性!重复问题中有一些很好的例子,说明了如何具体删除样式标记或仅
$input='text';
// ... 这里有些代码,可能是正则表达式
$desired_输出='text';
如何使用PHP执行上述操作?尝试以下操作,您需要一个正则表达式将其删除
$desired_output = preg_replace('/<\s*style.+?<\s*\/\s*style.*?>/si', ' ', $input );
我不想删除所有属性,我只想删除“style”属性!重复问题中有一些很好的例子,说明了如何具体删除样式标记或仅删除单个属性。@RIMMER我在该问题中的回答正好说明了这一点。此外,还有大量其他副本解释如何从元素中删除属性。也有一看,我再次发现自己不得不张贴这个链接。你不能用正则表达式解析HTML@GordonM:DOM解决方案可能更好,但使用正则表达式从HTML提取信息是完全有效的解决方案,只要它能工作。@Blender-除了它不能工作之外,这就是为什么它是无效的解决方案。
$desired_output = preg_replace('/<\s*style.+?<\s*\/\s*style.*?>/si', ' ', $input );
$desired_output = preg_replace('%style="[^"]+"%i', '', $input);