Le retour de boulatator 
Bonjour,
Je dois créer un regex dans un script Php qui va chercher et remplacer dans une chaine de caractère certain des attributs font affectés à un élément de la chaine.
ex :
<span style="font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 9px;">Environnement CALME</span>
donnerait =>
<span style="">Environnement CALME</span>
(notez que je supprime le style="", s'il est vide
)
J'ai choisi une balise span afin d'insister sur le fait que :
je ne cherche pas à vider les balises font, mais bien m'occuper de tous les attributs 'font-[-family|-size|-size-adjust|-stretch|-variant]' présents dans toutes les balises contenues dans ma chaine.
De plus, ce sont bien uniquement ces attributs et pas d'autre comme 'font-style' sur lesquelles je souhaite opérer.
on m'a conseiller '/\bfont-\w+:.+?;/' => seules les balises font sont à présents vides ! même celles ne comportant que font-style !
dernier point et non des moindres : si les attributs recherchés se trouvent en fin de balise (ex : '<span style="font-family: verdana; font-size:19px"') il se peut que le ';' soit absent aussi devrai-je rechercher les attributs avec ' " ' comme dernier caractère et non plus ';'
j'ai actuellement cessé de tester avec :
1 2 3 4
|
$regdeb='/^[font\-]+(([family|size|size\-adjust|stretch|variant])([:| :|: ])([a-zA-Z0-9 ,\.\_\-]))+\;$/';
$TxtOut = (preg_replace ($regdeb,'\\1', $tmp0)); |
en vain.
Pourriez vous me conseiller svp ? je pense tout de même ne pas être trop loin de la lumière à moins qu'une persistance rétinienne ne m'illusionne
Partager