Cómo utilizar la función Palabras para extraer solo elementos específicos de una cadenaSupongamos que tengo una cadena de caracteres con un delimitador común en forma de bal1_bla2_blbla3_blabla4
Y me gustaría crear una nueva columna que contenga solo "blbla3_blabla4", ¿cómo puedo aplicar la función de palabras para eso?
Análisis y modelado de datos básicosRe: Cómo utilizar la función Palabras para extraer solo elementos específicos de una cadenaHola,
Una solución en la interfaz de usuario sería utilizar Recode para lograr lo que se busca.
Haga clic derecho en el encabezado de su columna -> Recodificar -> haga clic derecho en el triángulo rojo debajo del nuevo valor -> Avanzado -> extraer segmento

Puede encontrar el código JSL en el registro y utiliza la palabra función:
/*:
// Recode column: Column 1 2
Local( {dt, col1},
dt = Data Table( "Test table" );
dt << Begin Data Update;
col1 = dt << New Column( dt:Column 1 );
col1 << Set Name( "Column 1 2" );
dt << Move Selected Columns( {col1}, after( dt:Column 1 ) );
For Each Row(
dt,
col1[] = Word(
[3 4],
dt:Column 1,
Get Whitespace Characters() ||
Get Punctuation Characters( Exclude Chars( "'-" ) ) || "_",
Unmatched( dt:Column 1 )
)
);
dt << End Data Update;
Espero que esto ayude.
Jonás
Re: Cómo utilizar la función Palabras para extraer solo elementos específicos de una cadenaSi desea dos últimos elementos, puede usar Word con indexación negativa (o positiva si conoce las ubicaciones exactas desde el comienzo de la cadena)
Names Default To Here(1);
str = "bal1_bla2_blbla3_blabla4";
res = Word([-2 -1], str, "_");
Show(res); // res = "blbla3_blabla4";