SASmacroでファイルフルパスからパスだけ残す
タイトルの通り。Windows想定。
マクロで書くの手こずったのでメモ。
/*例えば「C:Users\hogehoge\file\something.txt」があったら、 「C:Users\hogehoge\file\」を取得。*/ %macro getPathFromFullPath(&filepath); %let path = %substr(&filepath,1,%eval(%index(&filepath, %scan(&filepath, -1, '\'))-1)); %mend;
データステップならこれで書ける。
data _null_; b= substr(&filepath,1,index(&filepath,scan( &filepath, -1, "\"))); run;
FCMPで書いたほうが良さそうかな。