打開多個文件並比較文件名<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好,
我需要從特定文件夾中打開多個文件(特別是我只想打開.csv文件)。我還想從正在評估的文件的文件名中提取一些信息。
目前我有這個......
設置當前目錄(“C:\ Jan_24th \”);
files =目錄中的文件(“C:\ Jan_24th”);
for(i = 1,i <= N Items(files),i ++,
打開(
檔 ,
.........
1。這可以打開文件夾中的所有文件。但問題是,它可以打開我文件夾中的任何文件而不僅僅是.csv文件。
2。我想根據當前文件名在日誌中創建一個文本框:
例如,if(files ==“Red_color.csv”,textbox(“Red”)<< Journal;);
如果(文件 ==“Green_color.csv”,textbox(“Green”)<< Journal;);
如果(文件 ==“Blue_color.csv”,textbox(“Blue”)<< Journal;);
我不能讓這個工作.... 此外,必須有一種優雅的方式來做到這一點(#2),而不是使用多個for循環。我不確定這裡是否可以使用“substr”命令。
謝謝!
打開多個文件並比較文件名不同之處在於,對於替換字符串“\ 1”,該函數僅返回第一個parantheses內的內容。它也可以在沒有“\ 1”的情況下正常工作,但是在當前的例子中你會得到例如“Red_”而不是“Red”。
打開多個文件並比較文件名謝謝MS ... 它就像一個魅力。
我想是一個新手問題,為什麼你在你的正則表達式中使用\ 1。為什麼需要重新搜索(。+?)... 它不是什麼大事,但我認為我會問。
打開多個文件並比較文件名我認為如果csv文件的文件名總是以.csv結尾,則Ends With()可用於#1。正則表達式比#2的Substr更通用。一個例子:
設置默認目錄 ( “C:\ Jan_24th \” ) ;
檔 = 目錄中的文件 ( “C:\ Jan_24th \” ) ;
對於 ( 一世 = 1 ,一世 <= N項 ( 檔 ) ,一世 ++,
如果 ( 以。。結束 ( 檔 [ 一世 ] ,名為“.csv” ) ,
打開 ( 檔 [ 一世 ] ) ;
文本框 ( 正則表達式 ( 檔 [ 一世 ] , “(。+?)_” , “\ 1” ) ) << 日誌 ; //文件中第一個“_”之前的所有文本一世這個名字是記載的
)
) ;