Bonjour,
J'ai deux questions sur les regex.
- Ci-dessous, j'ai montré du code. Je crée des colonnes de formules qui analysent les informations d'une autre colonne. Les formules saisissent les informations correctes, mais s'arrêtent TOUJOURS à la ligne 3024. Les ensembles de données avec lesquels je travaille peuvent être des dizaines ou des lignes, ou beaucoup plus.
dt << New column( "Column 1", formula( regex( :Other column, "pattern" ) ) );
dt << New column( "Column 2", formula( regex( :Other column, "pattern", "\1" ) ) );
dt << New column( "Column 3", formula( num( regex( :Other column, "pattern" ) ) ) );<BR /><BR />dt << Rerun Formulas; // Doesn't help!
- Dans le débogueur, chronométrant mon script, la minuterie indique que le script est terminé en ~ 1 seconde et que ces trois lignes de code occupent la majeure partie du temps. Il y a aussi d'autres petites choses qui se passent.Cependant, le plus souvent, JMP se bloque lors de son exécution et je dois soit arrêter l'exécution du script dans le débogueur, soit terminer la tâche dans le gestionnaire de tâches.
J'ai utilisé regex dans un for() et pour each() et j'ai eu des problèmes similaires.Cependant, regex ressemble à for() et for each() plus, car la formule se termine régulièrement, mais le temps nécessaire pour terminer l'exécution du script bloque JMP et prend très longtemps, si elle se termine du tout.
Il s'agit d'un script regex très basique. J'ai fait des choses beaucoup plus complexes dans des boucles for pour d'autres projets, avec des ensembles de données beaucoup plus volumineux. L'ensemble de données lui-même a été importé au format CSV, mais c'est la seule différence que je peux repérer entre lui et d'autres ensembles de données.Des idées sur ce qui se passe ?