Convertir tous les balises br dans un
universel
-
18-09-2019 - |
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!
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.
/ [BB] [rR]? /? ?> /
Essayez ce modèle
<\s*[bB][rR]\s*\/?\s*>
$output = preg_replace('/< ?[bB][rR] ?\/? ?>/', '<br />', $input);