Excepciones dentro de conjuntos en expresiones regulares de PHP
Ya sabes que los caracteres especiales dentro de []
se convierten en caracteres ordinarios. Sin embargo, hay
excepciones: si necesitas corchetes
como caracteres, entonces debes escaparlos con una barra
inversa.
Por ejemplo, en el siguiente código, el patrón de búsqueda se ve así: entre equis hay un corchete:
<?php
$str = 'x]x xax x[x x1x';
$res = preg_replace('#x[\[\]]x#', '!', $str);
?>
Como resultado, se guardará lo siguiente en la variable:
'! xax ! x1x'
Dada la cadena:
<?php
$str = 'x[]z x{}z x.z x()z';
?>
Escribe una expresión regular que encuentre todas las palabras
según el patrón: letra 'x', luego cualquier
cantidad de cualquier tipo de corchetes, luego letra 'z'.
Dada la cadena:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Escribe una expresión regular que encuentre las cadenas
entre cualquier tipo de corchetes y las reemplace por '!'.