Script funziona solo una volta in un cicloCiao,
Lo script seguente scorre i file in due elenchi per verificare quale di essi corrisponde. Se lo fanno, la funzione 'tagger' viene utilizzata per manipolare i file. Ho creato questo codice per una GUI in cui testare la sua funzionalità ho scelto quattro file (due per lf e due per lg). Il problema è che quando la condizione viene valutata su true, lo script 'tagger' viene eseguito solo per il primo dei due file corrispondenti, invece di tutti e quattro i file corrispondenti. Mi chiedevo se mi mancava qualcosa?
commenceTaggingScript2 = Expr(
For(p = 1, p <= n items(lf), p++,
For(q = 1, q <= nitems(lg), q++,
if (Left(lf[p], Length(lf[p]) - 4) == Left(lg[q], Length(lg[q]) - 8), print("Sliced Lf: " || Left(lf[p], Length(lf[p]) - 4)); print("Sliced lg: " || Left(lg[q], Length(lg[q]) - 8)); tagger(selectedDirlf || lf[p], selectedDirlg || lg[q]) , print("Not matching"));
);
);
);
Ri: Script funziona solo una volta in un cicloIl tuo codice ha funzionato per me (provato JMP 13 e JMP 14) dopo aver aggiunto i seguenti dati di test:
tagger = function({a, b}, print("tagging", a, b));
lf = {"abc1234", "xyz"};
lg = {"abc12345678", "xyz12345678"};
selectedDirlf = "/LF/";
selectedDirlg = "/LG/";
commenceTaggingScript2;
Cioè, ho visto Tagger chiamato 2 volte tra i 4 confronti:
"Sliced Lf: abc"
"Sliced lg: abc"
"Etichettatura"
"/ LF / abc1234"
"/ LG / abc12345678"
"Non combacia"
"Non combacia"
"Sliced Lf: xyz"
"Affettato lg: xyz"
"Etichettatura"
"/ LF / xyz"
"/ LG / xyz12345678"