¿Cómo extraer el texto de la columna en función de los valores de los caracteres en lugar de los valores numéricos?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola comunidad JMP,
Tengo texto en una columna titulada Descripción que se parece a lo siguiente:
Descripción Columna
Fila 1: Problema de software: Software del sistema; Ninguna respuesta
Fila 2: Problema de software: Software del sistema; Ninguna respuesta
Fila 3: problema de electrónica: fuente de alimentación; Respuesta 1
Fila 4: Problema de interfaz de usuario y computadora: software del sistema; Respuesta 2
Bien, quiero tomar el texto de esta columna y dividirlo según la puntuación.Entonces, en una nueva columna, quiero que el texto se muestre antes de los dos puntos ":", y en otra columna, quiero el texto entre el punto y coma y los dos puntos ":" y ";":
Entonces debería obtener:
Descripción Columna Columna B Columna C
Fila 1: Problema de software: Software del sistema; Sin respuesta Software Problema Software del sistema
Creé estas nuevas columnas y apliqué una fórmula en la que intenté usar las funciones de caracteres Izquierda/Derecha (me refiero a la Columna de Descripción como el campo de texto).Sin embargo, todas las funciones de caracteres basan la longitud en un valor numérico.¿Cómo puedo usar una función de carácter izquierdo/derecho para decir
"Derecha( Descripción Columna , ":")" para obtener todo el texto antes de ":"??
Gracias por tu ayuda,
-sara
Re: ¿Cómo extraer texto de columna basado en valores de caracteres en lugar de valores numéricos?¡Gracias! Ambas versiones hicieron exactamente lo que estaba buscando.
Re: ¿Cómo extraer texto de columna basado en valores de caracteres en lugar de valores numéricos?Un enfoque alternativo aquí es usar la función Word().
Fórmula para la columna B:
Palabra( 1, :Columna de descripción, ":;" )
Fórmula para la columna C:
Trim( Palabra( 2, :Columna de descripción, ":;" ) )
Re: ¿Cómo extraer texto de columna basado en valores de caracteres en lugar de valores numéricos?Esto hará lo que necesitas.El truco consiste en usar contains y substr para obtener las subcadenas exactas que desea.
dt = Nueva tabla ( "Problemas" ,
Agregar filas ( 4 ) ,
Nueva columna ( "Descripción" ,
Personaje ,
Nominal ,
Establecer valores (
{ "Problema de software: software del sistema; sin respuesta" ,
"Problema de software: software del sistema; sin respuesta" ,
"Problema de electrónica: Fuente de alimentación; Respuesta 1" ,
"Problema de interfaz de usuario y computadora: software del sistema; Respuesta 2" }
)
)
) ;
dt << nueva columna ( "Columna B" , Personaje , Nominal ,
fórmula (
colon_pos = contiene ( : Descripción , ":" ) ;
substr ( : Descripción , 1 , colon_pos - 1 ) ;
)
) ;
dt << nueva columna ( "Columna C" , Personaje , Nominal ,
fórmula (
colon_pos = contiene ( : Descripción , ": " ) ;
semi_pos = contiene ( : Descripción , "; " ) ;
substr ( : Descripción , colon_pos + 2 , semi_pos - colon_pos - 2 ) ;
)
) ;