newman Posted April 28, 2006 Share Posted April 28, 2006 hi . how can i remove the style attribute and its contents ( the code blow ) using preg_replace , as u can see the style"...." is in 3 lines:<td style="background-color:#ffffff;border:#0000001px;padding:3px;font-style:italic"></td>the code would turn to : <td></td> after replacing how can i do that ?thanks . Link to comment https://forums.phpfreaks.com/topic/8594-preg_replace/ Share on other sites More sharing options...
toplay Posted April 28, 2006 Share Posted April 28, 2006 Example:[code]$text = <<<EOD<td style="background-color:#ffffff;border:#0000001px;padding:3px;font-style:italic"></td>EOD;$text = preg_replace('/<td.+?>.*?<\/td>/si', '<td></td>', $text);[/code] Link to comment https://forums.phpfreaks.com/topic/8594-preg_replace/#findComment-31551 Share on other sites More sharing options...
newman Posted April 29, 2006 Author Share Posted April 29, 2006 thanks for your answer . but i want to remove only the style=".." not other attributes , and some table cells have 0,1,2 or 3 lines of css like this :<td style="border:#000000 1px;background-color:#ffffff;padding:3px">something</td>or<td style="border:#000000 1px;background-color:#ffffff;">something</td>or<td style="border:#000000 1px">something</td> Link to comment https://forums.phpfreaks.com/topic/8594-preg_replace/#findComment-31953 Share on other sites More sharing options...
toplay Posted April 29, 2006 Share Posted April 29, 2006 Next time please be more specific of what you mean. Try something like this:$text = preg_replace('/(<td.*?)(style *?= *?(["\']).*?\\3)(.*?>.*?<\/td>)/si', '$1$4', $text);Read up on expressions:[a href=\"http://www.regular-expressions.info\" target=\"_blank\"]http://www.regular-expressions.info[/a]Good luck. Link to comment https://forums.phpfreaks.com/topic/8594-preg_replace/#findComment-32042 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.