Estoy tratando de eliminar todo de una cadena pero solo números (0-9).
Pensé que esto funcionaría ...
echo preg_replace("[^0-9]","",'604-619-5135');
Pero echos "604-619-5135". ¿¿¿Qué me estoy perdiendo???
Prueba esto:
preg_replace('/[^0-9]/', '', '604-619-5135');
preg_replace utiliza PCRE que generalmente comienzan y terminan con a /
.
(?flags)
) las personas que diseñaron / escribieron la función / API pensaron que era una buena idea pasar las banderas de expresiones regulares con la forma de doble comilla en/flags
lugar de usar un parámetro de función adicional.Esto es para futuros desarrolladores, también puedes probar esto. Simple también
fuente
Debería encerrar el patrón en un delimitador; normalmente, se utiliza una barra inclinada (/). Prueba esto:
fuente
Una forma mucho más práctica para aquellos que no quieren usar expresiones regulares:
nota: también funciona con números de teléfono.
fuente