Re : Utiliser la fonction Word() ou Words() pour analyser une chaîne dans une colonneEssayez d'utiliser 1 pour l'index au lieu de N Items() si vous voulez le premier index (avec Mots() ) et avec Mot() la syntaxe devrait être quelque chose comme 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 : Utiliser la fonction Word() ou Words() pour analyser une chaîne dans une colonneJMP a une fonction text to columns() intégrée.
Names default to here(1);
dt = New Table("split",
<< New Column("new_batch", character, <<SET values=""></SET>Re : Utiliser la fonction Word() ou Words() pour analyser une chaîne dans une colonneMerci pour l'aide. J'ai fini par utiliser le code ci-dessous pour diviser les données dans une nouvelle colonne séparée par le délimiteur.
dt3 << Text To Columns( delimiter( "-" ), columns( :new_batch )); // strips out the bottle number from BCB batch numbers. Other chemicals not affected
Il donne la sortie suivante

Merci beaucoup pour l'aide.
Re : Utiliser la fonction Word() ou Words() pour analyser une chaîne dans une colonneMerci pour l'aide. L'exemple avec word() et words() a fonctionné. Cependant, j'ai fini par utiliser le code ci-dessous car il ne nécessitait qu'une seule ligne et était plus simple.
dt3 << Text To Columns( delimiter( "-" ), columns( :new_batch )); // strips out the bottle number from BCB batch numbers. Other chemicals not affected
Utilisation de la fonction Word() ou Words() pour analyser une chaîne dans une colonneBonjour à tous,
J'ai une table où l'une des colonnes contenait des données sous la forme d'une chaîne alphanumérique (par exemple 1bc5ef-gh7) et je voudrais analyser la chaîne en utilisant le trait d'union comme délimiteur et ils renvoient la première partie de la chaîne ( 1bc5ef) en tant que données dans une nouvelle colonne.
Jusqu'à présent, j'ai le code ci-dessous. Si j'utilise le Mot s (), elle ne renvoie que la deuxième partie de la chaîne (par exemple gh7). Cependant, si j'utilise le Mot (), la liste RES est vide.
Je voudrais obtenir la première partie de la chaîne et la mettre dans une nouvelle colonne de la même table.
// 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);
Toute aide est appréciée. Merci,
Ingénierie de la qualité et des procédés