Aide Expression Régulière.

Résolu
bl00p's Messages postés 118 Date d'inscription   Statut Membre Dernière intervention   -  
bl00p's Messages postés 118 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je souhaiterais créer une RegEx qui me supprime tous les sauts de lignes <br/> ou <br /> seulement dans les tableaux <table></table>.
Je ne sais pas comment indiquer à la fonction de remplacer ces sauts de lignes simplement à l'intérieur des tableau et non pas dans tous le texte.

Ducoup j'ai commencé comme ça :

#<br\s?/>#


Auriez vous une idée ? Merci d'avance !

EDIT : J'ai un peu avancé :
#<table>(.+)<br\s?/>(.+)<\/table>#isU

Le problème maintenant c'est que seul le premier saut de ligne est supprimé. Les autres reste.




"Le meilleur moyen de prendre un train à l'heure, c'est de s'arranger pour rater le précédent."
A voir également:

2 réponses

tryan44 Messages postés 1288 Date d'inscription   Statut Membre Dernière intervention   220
 
Salut,

Une autre solution éventuellement :
$variable = '<table>
  <tbody>
    <tr>
      <td>a<br>
b</td>
      <td>c<br/></td>
      <td>d</td>
    </tr>
    <tr>
      <td>e<br /></td>
      <td>f</td>
      <td>g<br>
h</td>
    </tr>
  </tbody>
</table>
<p>ceci est un texte <br/>avec retour à la ligne.</p>';
echo $variable.'<br/>';

function supprime_br($texte)
{
	$motif = $texte[0];
	$motif = str_replace("<br>", "", $motif);
	$motif = str_replace("<br/>", "", $motif);	
	$motif = str_replace("<br />", "", $motif);	
	return $motif;
}

$texte = preg_replace_callback('#<table>(.+)</table>#isU', 'supprime_br', $variable);

echo $texte;
1
bl00p's Messages postés 118 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonsoir ça marche nickel ! Merci bien.
0