Apertura di più file e confronto di nomi di file<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao a tutti,
Ho bisogno di aprire più file da una particolare cartella (in particolare voglio aprire solo i file .csv). Voglio anche estrarre alcune informazioni dai nomi dei file in corso di valutazione.
Attualmente ho questo ...
Imposta la directory corrente ("C: \ Jan_24th \");
files = File nella directory ("C: \ Jan_24th");
for (i = 1, i <= N Items (file), i ++,
Aperto(
File ,
.........
1. Questo può aprire tutti i file che ho nella cartella. Ma il problema è che può aprire qualsiasi file che ho nella mia cartella non solo file .csv.
2. Voglio creare una casella di testo nel mio diario in base al nome del file corrente:
Ad esempio, se (file == "Red_color.csv", textbox ("Red") << Journal;);
se (file == "Green_color.csv", textbox ("Green") << Journal;);
se (file == "Blue_color.csv", casella di testo ("Blu") << Diario;);
Non riesco a farlo funzionare .... Inoltre, ci deve essere un modo elegante per farlo (# 2) invece di usare più for-loops. Non sono sicuro che il comando "substr" possa essere usato qui.
Grazie!
Apertura di più file e confronto di nomi di fileLa differenza è che con la stringa di sostituzione "\ 1" la funzione restituisce solo ciò che è all'interno delle prime parantesie. Funzionerebbe bene anche senza "\ 1" ma nell'esempio corrente avresti ad esempio "Red_" invece di "Red".
Apertura di più file e confronto di nomi di fileGrazie MS ... Ha funzionato come un fascino.
Solo una domanda per principianti, suppongo, perché hai usato il \ 1 nella tua regex. Perché la necessità di cercare nuovamente il (. +?) ... non è un grosso problema ma qualcosa che ho pensato di chiedere.
Apertura di più file e confronto di nomi di filePenso che Ends With () possa essere usato per # 1 se il nome file di csv finisce sempre con .csv. Regex è più versatile di Substr per # 2. Un esempio:
Imposta la directory predefinita ( "C: \ Jan_24th \" ) ;
File = File nella directory ( "C: \ Jan_24th \" ) ;
Per ( io = 1 , io <= N articoli ( File ) , io ++,
Se ( Finisce con ( File [ io ] , ".Csv" ) ,
Aperto ( File [ io ] ) ;
Casella di testo ( regex ( File [ io ] , "(. +?) _" , "\ 1" ) ) << rivista ; // Tutto il testo prima del primo "_" nel file io Il nome è registrato
)
) ;