He tenido algunos problemas con las expresiones regulares.
Este es mi codigo
$pattern = "^([0-9]+)$";
if (preg_match($pattern, $input))
echo "yes";
else
echo "nope";
Lo ejecuto y obtengo:
Advertencia: preg_match () [function.preg-match]: No se encontró el delimitador final '^' en
php
regex
preg-match
pcre
dedo
fuente
fuente
Respuestas:
Las cadenas de expresiones regulares de PHP necesitan delimitadores. Tratar:
Además, tenga en cuenta que tiene una o minúscula, no un cero. Además, si solo está validando, no necesita el grupo de captura y puede simplificar la expresión regular a
/^\d+$/
.Ejemplo: http://ideone.com/Ec3zh
Ver también: PHP - Delimitadores
fuente
[
y]
delimitadores, de lo contrario se encontrará con conflictos con el patrón en sí.Su patrón de expresiones regulares debe estar en delimitadores:
fuente
Puede usar la biblioteca T-Regx , que no necesita delimitadores
fuente