tengo¿Cómo extraer un número de una cadena en Perl?
print $str;
abcd*%1234$sdfsd..#d
La cadena siempre tendría sólo un tramo continuo de números, como 1234
en este caso. El resto será alfabetos u otros caracteres especiales.
¿Cómo puedo extraer el número (1234
en este caso) y almacenarlo en str
?
This page sugiere que debo usar \d
, pero ¿cómo?
Lazer solicita un número, no solo un número entero. Esta expresión regular arrojará '.',' e' que se puede usar para formar un flotador. También '\ d' no es solo' [0-9] ', debido al soporte Unicode en Perl: los dígitos en otros glifos (como el indio) son válidos. Entonces tu expresión regular también aceptará cadenas que no son números. – dolmen
@dolmen Lazer debería ser más específico, entonces. Su ejemplo no incluye decimales ni exponenciales, y no puedo saber con certeza si quiere incluirlos o no. Sin embargo, tienes razón acerca de los dígitos del script variante unicode, voy a editar. –