Re: Usar la función Word() o Words() para analizar cadenas en una columnaIntente usar 1 para el índice en lugar de N elementos () si desea que el primer índice (con Palabras() ) y con Palabra() la sintaxis debería ser algo así como Word(1, Vals[i], "-")
Names Default To Here(1);
str = "1bc5ef-gh7";
w1 = Words(str, "-");
show(w1);
show(w1[1]);
w2 = Word(1, str, "-");
show(w2);
Re: Usar la función Word() o Words() para analizar cadenas en una columnaJMP tiene una función incorporada de texto a columnas ().
Names default to here(1);
dt = New Table("split",
<< New Column("new_batch", character, <<SET values=""></SET>Re: Usar la función Word() o Words() para analizar cadenas en una columnaGracias por la ayuda. Terminé usando el siguiente código para dividir los datos en una nueva columna separada por el delimitador.
dt3 << Text To Columns( delimiter( "-" ), columns( :new_batch )); // strips out the bottle number from BCB batch numbers. Other chemicals not affected
Da la siguiente salida

Muchas gracias por la ayuda.
Re: Usar la función Word() o Words() para analizar cadenas en una columnaGracias por la ayuda. El ejemplo con word() y words() funcionó. Sin embargo, terminé usando el siguiente código porque solo requería 1 línea y era más simple.
dt3 << Text To Columns( delimiter( "-" ), columns( :new_batch )); // strips out the bottle number from BCB batch numbers. Other chemicals not affected
Uso de la función Word() o Words() para analizar cadenas en una columnaHola a todos,
Tengo una tabla en la que una de las columnas tenía datos en forma de cadena alfanumérica (por ejemplo, 1bc5ef-gh7) y me gustaría analizar la cadena usando el guión como delimitador y devuelven la primera parte de la cadena ( 1bc5ef) como datos en una nueva columna.
Hasta ahora, tengo el código a continuación. si uso el Palabra s (), solo devuelve la segunda parte de la cadena (por ejemplo, gh7). Sin embargo, si uso el Palabra (), la lista RES aparece vacía.
Me gustaría obtener la primera parte de la cadena y colocarla en una nueva columna en la misma tabla.
// there is a data table that already has a column called new_batch<BR /><BR /> Vals = :new_batch << Get Values; // Get Values out
Res = List(); // Define empty list
For(i = 1 , i <= N Items(Vals), i++,
Test = Words(Vals[i],"-"); // Words is the function that will split your string by delimiter
Insert Into(Res,Test[N Items(Test)]);
);
dt << New Column("new_batch_2", RES);
Cualquier ayuda es apreciada. Gracias,
Ingeniería de Calidad y Procesos