Cómo extraer solo valores numéricos de una cadena de texto<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Tengo una tabla de datos grande que tiene una columna que contiene texto char.A continuación se muestra un ejemplo de la descripción del texto.
Necesito hacer algunas estadísticas descriptivas sobre la duración de apertura/cierre del robot.
Me gustaría extraer la parte numérica de la cadena de caracteres y colocarla en una nueva columna con tipo de datos numérico.
¿Hay una función de fórmula que pueda usar para hacer eso en una columna nueva?
Texto de ejemplo
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "1.530000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "2.030000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "2.010000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "2.510000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "2.215000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "2.215000" segundos
: Movimiento de la válvula a la posición "ABIERTA" Completado. Tiempo necesario para el movimiento "3.160000" segundos
: Movimiento de la válvula a la posición "ABIERTA" Completado. Tiempo necesario para el movimiento "3.160000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "1.815000" segundos
: Movimiento de válvula a la posición "CERRADO" completado. Tiempo necesario para el movimiento "1.815000" segundos
: Movimiento de la válvula a la posición "ABIERTA" Completado. Tiempo necesario para el movimiento "3.140000" segundos
: Movimiento de la válvula a la posición "ABIERTA" Completado. Tiempo necesario para el movimiento "3.140000" segundos
: Movimiento de la válvula a la posición "ABIERTA" Completado. Tiempo necesario para el movimiento "2.955000" segundos
Re: Cómo extraer sólo valores numéricos de una cadena de textoHola JayV.,
La función Word() también tomará un argumento para especificar los delimitadores, por lo que puedes evitar la parte Substr() de tu fórmula y simplemente usar:
Núm( Palabra( 11, :Texto, "\!" " ) )
El \! es la cadena de escape para decirle al analizador que " es parte de la cadena entrecomillada.
-Jeff
Re: Cómo extraer solo valores numéricos de una cadena de textoGracias 
Re: Cómo extraer solo valores numéricos de una cadena de textoDepende exactamente de lo que quieras. ¿Se acerca lo siguiente?
los datos tienen;
cadena de entrada & $100.;
tarjetas;
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 1,530000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 2,030000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 2,010000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 2,510000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 2,215000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 2,215000 segundos.
Movimiento de la válvula a la posición "ABIERTA" completado. Tiempo de movimiento: 3,160000 segundos.
Movimiento de la válvula a la posición "ABIERTA" completado. Tiempo de movimiento: 3,160000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 1,815000 segundos.
Movimiento de la válvula a la posición "CERRADO" completado. Tiempo de movimiento: 1,815000 segundos.
Movimiento de la válvula a la posición "ABIERTA" completado. Tiempo de movimiento: 3,140000 segundos.
Movimiento de la válvula a la posición "ABIERTA" completado. Tiempo de movimiento: 3,140000 segundos.
Movimiento de la válvula a la posición "ABIERTA" completado. Tiempo de movimiento: 2,955000 segundos.
;
datos deseados (drop=string both);
establecer tener;
ambos=comprimir(substr(cadena,cualquierdígito(cadena)),'"');
num=input(substr(ambos,1,anyalpha(ambos)-1),12.);
unidad=substr(ambos,anyalpha(ambos));
correr;