ソフトウェア/Igor のバックアップソース(No.1)
更新[[公開メモ]] * Igor [#k3f1dcd4] データ解析に Wave Metrics 社の Igor Pro を使っています。 なかなか癖のあるソフトですが、 Igor 上でプログラムを組むことでかなり複雑なデータ解析も自動化できていろいろ捗ります。 ここには使い回しの効きそうなコード例を上げていこうと思います。 * ファイル名操作用のユーティリティ関数 [#x15fe647] ":" 区切りで渡されたファイルパスを操作する関数。 同名の Delphi の関数を模したものです。 LANG:Igor // ファイル名を返す function/T ExtractFileName(filename) string filename return StringFromlist(ItemsInList(filename, ":")-1, filename, ":") end // ファイルパスを返す (末尾には : が付く) function/T ExtractFilePath(filename) string filename return filename[0,strlen(filename)-strlen(ExtractFileName(filename))-1] end // filename の . 以降を取り除いたものに ext を付ける function/T ChangeFileExt(filename, ext) string filename, ext variable i = strsearch(filename, ".", inf, 3) if(i<0) return filename + ext else return filename[0,i-1] + ext endif end 使用例 LANG:Igor print ExtractFileName("c:folder1:folder2:file.ext") // prints "file.ext" print ExtractFilePath("c:folder1:folder2:file.ext") // prints "c:folder1:folder2:" print ExtractFilePath("c:folder1:folder2:file.ext") + "newfile.ext" // prints "c:folder1:folder2:newfile.ext" print ChangeFileExt("c:folder1:folder2:file.ext", ".txt") // prints "c:folder1:folder2:file.txt" print ChangeFileExt("c:folder1:folder2:file.ext", "") // prints "c:folder1:folder2:file"
Counter: 14276 (from 2010/06/03),
today: 3,
yesterday: 2