I use this to clean html from font tag :
$html = '<font class="textmiddle" color="red">toto</font>' ;
$clean = preg_replace('/<font[^>]*>/', '', $html) ;
$clean = preg_replace('/<\/font>/', '', $clean) ;
It works like a charm.
But, when the html string is :
$html = '<font class="textmiddle" color="<%= color.importanttext %>">toto</font>' ;
Then the result is not the expected one :
">toto