Jump to content

Archived

This topic is now archived and is closed to further replies.

newman

preg_replace

Recommended Posts

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 .

Share this post


Link to post
Share on other sites
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]

Share this post


Link to post
Share on other sites
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>

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.