La manière la plus simple
Créer une variable pour contenir votre expression régulière; de cette façon, vous pouvez simplement commenter l' preg_replace()
déclaration:
$re = '#<br\s*/?>(?:\s*<br\s*/?>)+#i';
// $string = preg_replace($re, '<br />', $string);
Fixer à l'aide des classes de caractères
Pour fixer la ligne de commentaires, vous pouvez briser ?>
en mettant >
à l'intérieur d'une classe de caractères comme suit:
$string = preg_replace('#<br\s*/?[>](?:\s*<br\s*/?[>])+#i', '<br />', $string);
^ ^ ^ ^
Pour fixer le bloc de commentaires, vous pouvez l'appliquer à d' /
:
$string = preg_replace('#<br\s*[/]?>(?:\s*<br\s*[/]?>)+#i', '<br />', $string);
^ ^ ^ ^
Pour fixer les deux commentaires de styles, vous pouvez mettre /
et >
dans leur propre classe de personnage.
Fixer à l'aide de l' /x
modificateur
L' x
modificateur - aka PCRE_EXTENDED
- ignore les espaces et retours à la ligne dans une expression régulière (sauf quand ils se produisent à l'intérieur d'une classe de caractères); il est ainsi possible d'ajouter des espaces pour séparer les problématiques de caractères. Pour fixer les deux commentaires du style:
$string = preg_replace('#<br\s* /? >(?:\s*<br\s* /? >)+#ix', '<br />', $string);
^ ^ ^ ^