Question

besoin d'un simple preg_replace pour convertir tous les <br> de <br/> et toutes les combinaisons possibles pour br <br />.

Cela doit travailler pour que je puisse traiter une chaîne-à-dire: $output = preg_replace('', '<br />', $input)

Merci à tous!

Était-ce utile?

La solution

Un RegEx pour les gouverner tous:

$output = preg_replace('/<\s*br[^>]*>/i', '<br />', $input);

Autres conseils

[Commentaire de l'analyseur obligatoire HTML]

Si vous travaillez avec HTML inconnu et non cohérente (comme il semble que vous êtes), puis reposez la regex, vous pourriez vous blesser. Trouver une liste des balises et la modification d'un document est ce que HTML parseurs ont été construites pour.

En savoir Méthodes PHP DOM et vous épargner beaucoup de chagrin d'amour.

/ /

Essayez ce modèle

<\s*[bB][rR]\s*\/?\s*>
$output = preg_replace('/< ?[bB][rR] ?\/? ?>/', '<br />', $input);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top