Extraiga un entero único (sin signo) de una cadena
Quiero extraer los dígitos de una cadena que contiene números y letras como:
"In My Cart : 11 items"
Quiero extraer el número 11
.
Aceptado
Si solo desea filtrar todo lo que no sean números, lo más fácil es usar filter_var :
$str = 'In My Cart : 11 items';
$int = (int) filter_var($str, FILTER_SANITIZE_NUMBER_INT);
$str = 'In My Cart : 11 12 items';
preg_match_all('!\d+!', $str, $matches);
print_r($matches);
preg_replace('/[^0-9]/', '', $string);
¡Esto debería funcionar mejor!...
Usando preg_replace
:
$str = '(111) 111-1111';
$str = preg_replace('/\D/', '', $str);
echo $str;
Salida: 1111111111