![]() |
variable que solo guarde cifras de una cadena
Hola amigos,
¿Cómo puedo hacer para que de una cadena de texto solo se guarden en una variable las cifras?. Lo explico con un ejemplo: Si una entrada es: '58' o 'tengo 58' o 'Hay 58 solamente'. En cualquiera de los tres casos a mi me interesa '58' para pasarlo a entero y operar con esa cifra. Si convirtiera la entrada a entero en los dos últimos casos me daría error. ¿Cómo puedo hacer? |
Prueba esto con un Edit:
Un Saludo. |
Hola,
Creo que este tipo de entradas son propensas a fallar, pero, en fin, no me quedo con las ganas: Y, casi por el mismo precio: Nota: no lo hagan en sus casas; si tienen, escogan otras alternativas. ;) Segunda nota: lo siento Marcos, no tiene nada que ver con tu respuesta, es que no he podido evitarlo. :D |
Funciona la de marcos
Marcos, funciona pero no entiendo el código :)
|
Gracias a los dos
Gracias Marcos y gracias David por contestarme.
|
Pues se trata de un simple bucle For para recorrer la cadena de carácter en carácter.
Luego comprobamos que sea un número y si es así lo agregamos a la segunda variable. El valor ASCII de los números va desde el 0 (48) hasta el 9(57), como la función ORD, devuelve ese valor, de ahí la comprobación si está en este rango de valores, si es así se trata de un número y lo añadimos a la variable.
n actúa como subindice para poder recorrer los caracteres de uno en uno. Creo que así esté fácil de entender. Un Saludo. |
Gracias Marcos, lo que me confundía era lo del 48 y 57 que no me daba cuenta de donde salían.
|
La franja horaria es GMT +2. Ahora son las 02:30:12. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi