Quiero hacer coincidir palabras en camello que comiencen con !
como !RedHat
contenidas en $line
. Estoy usando php 5.3.10-1ubuntu2 with Suhosin-Patch (cli)
.Cómo hacer coincidir el signo de exclamación (!) En PHP?
estoy tratando siguientes cosas:
$line = preg_replace(" !([A-Z])", " $1", $line);
- resultado:
PHP Warning: preg_replace(): No ending delimiter '!' found
- resultado:
$line = preg_replace(" \!([A-Z])", " $1", $line);
- resultado:
PHP Warning: preg_replace(): Delimiter must not be alphanumeric or backslash
- resultado:
$line = preg_replace(" [!]([A-Z])", " $1", $line);
- resultado:
PHP Warning: preg_replace(): Unknown modifier '('
- resultado:
$line = preg_replace(" [\!]([A-Z])", " $1", $line);
- resultado:
PHP Warning: preg_replace(): Unknown modifier '('
- resultado:
¿Cómo es la forma correcta para que coincida con !
en PHP expresión regular?
no necesita escapar de '!' –
@BartKiers Sí, lo sé, acabo de copiar una de sus opciones al azar, resultó ser la segunda. Actualicé la respuesta ahora. –
@OP tenga en cuenta que para usar las funciones de expresiones regulares de php, debe encerrar la expresión con un delimitador "aleatorio" (elegido por el usuario). Esto puede ser/(como en el ejemplo), pero también &, * o lo que sea. Pero prácticamente cualquier ejemplo encontrado en Internet omite esos cierres (lo cual es correcto), así que no los olvides :) – giorgio