ファイルの名前 一気に変更
83 views (last 30 days)
Show older comments
例えば、以下の名前を持つファイルがあります。どう一気にその真ん中の"r10"を外しますか。
VOI_A_r10p0001.mask
VOI_A_r10p0001_1.mat
VOI_A_r10p0001_2.mat
VOI_A_r10p0001_1_eig.mat
VOI_A_r10p0001_2_eig.mat
もう一種類の名前は以下のようになっています。どう一気に"A_"の後ろに"p0001_"を加えますか。
VOI_A.mask
VOI_A_1.mat
VOI_A_2.mat
VOI_A_1_eig.mat
VOI_A_2_eig.mat
どうぞよろしくお願い致します。
Accepted Answer
Takumi
on 5 Aug 2020
ファイル名を変更するにはmovefile関数を使います.また指定文字列を削除するにはerase関数が使えます.
以下のファイル
VOI_A_r10p0001.mask
VOI_A_r10p0001_1.mat
VOI_A_r10p0001_2.mat
VOI_A_r10p0001_1_eig.mat
VOI_A_r10p0001_2_eig.mat
からr10を取り除くには次のようにすると良いでしょう.
fileList = dir('VOI_A_*'); % VOI_A_から始まるファイル取得
for i=1:length(fileList)
str = fileList(i).name; % ファイル名
TF = contains(str,"r10"); % r10を含んでいるかどうか
if TF
newStr = erase(str,"r10"); % r10を取り除く
movefile(str,newStr); % ファイル名変更
end
end
また以下のファイル
VOI_A.mask
VOI_A_1.mat
VOI_A_2.mat
VOI_A_1_eig.mat
VOI_A_2_eig.mat
のA_の後ろにp0001_を加えるにはinsertAfter関数が使えます.
fileList = dir('VOI_A_*'); % VOI_A_から始まるファイル取得
for i=1:length(fileList)
str = fileList(i).name;
TF = contains(str,"p0001_"); % p0001_がすでに含まれているかどうか
if ~TF
newStr = insertAfter(str,"A_","p0001_")
movefile(str,newStr)
end
end
0 Comments
More Answers (0)
See Also
Categories
Find more on Author Block Masks in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!