Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Add Rows( 5, at end );
Wait( 0 );
Current Data Table() << Bring Window To Front;
Main Menu( "Copy With Column Names" );
txt = Get Clipboard();
Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?Merci!
Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?Dans ce cas simple, il n'y a pas besoin de regex et vous pouvez simplement obtenir l'index de la liste. Si une comparaison plus compliquée est nécessaire, il devrait être assez facile de créer une boucle pour parcourir la liste
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Add Rows(5, at end);
dt << Select columns("name");
Main Menu("Copy With Column Names", dt << Get Window Title);
clipb = Get Clipboard();
txt = Trim Whitespace(clipb);
l_all = Words(txt, "\!N");
break_str = "HENRY";
l_interested = Substr(l_all, Contains(l_all, break_str));
dt_new = New Table("table",
Add Rows(N Items(l_interested)),
New Column("col", Character, Nominal, Values(l_interested));
);

Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?Je veux continuer à apprendre le code efficace des experts.
Si les données OBTENUES à partir du presse-papiers A 3 colonnes par jour et sont séparées par des espaces, pas des onglets.

Comment modifier le code pour obtenir un tableau à trois colonnes comme celui-ci.
Merci jthi !
Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?De nombreuses façons de gérer cela. Voici une idée utilisant Abonnement aux tables de données
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Add Rows(5, at end);
dt << Select columns({"name", "age", "sex"});
Main Menu("Copy", dt << Get Window Title);
clipb = Get Clipboard();
txt = Trim Whitespace(clipb);
// Substitute Into(txt, " ", "\!t"); // could replace spaces with tabs
l_all = Words(txt, "\!N");
// Using \!t for demo purposes
list_of_lists = Transform Each({line}, l_all, Words(line, "\!t"));
dt_new = New Table("table",
Add Rows(N Items(l_all))
);
dt_new << Delete Column(1);
For(i = 1, i <= N Items(list_of_lists[1]), i++,
dt_new << New Column("col" || char(i), Character, Nominal);
);
dt_new[0,0] = list_of_lists;Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?J'utilise toujours JMP 14
Ce code ne fonctionne pas.
list_of_lists = Transform Each({line}, l_all, Words(line, "\!t"));Merci jthi !
Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?Changez-le en boucle for normale. Quelque chose comme ça devrait fonctionner
list_of_lists = {};
For(i = 1, i <= N Items(l_all), i++,
Insert Into(list_of_lists, Eval List({Words(l_all[i], "\!t")}))
);Re : Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?list_of_lists = {};
For(i = 1, i <= 3, i++,
Insert Into(list_of_lists, Eval List({Words(l_all, " ")}))
);Comment utiliser Regex pour intercepter une plage de contenu spécifiée dans une table ?Bonjour!
Hypothèse : les données d'origine sont obtenues dans le presse-papiers avec des lignes vides consécutives à la fin, et les lignes qui ne sont pas vides ne sont pas copiées.
Comment utiliser le RE pour intercepter le contenu commençant après la ligne contenant le contenu spécifié et se terminant sur la ligne vide. Copier dans la nouvelle table.
Par exemple : "Grande classe.JMP"
Et il est écrit "ALFRED"
Il obtient ma nouvelle table.
Script