2015-10-18 302 views
1

我有幾個pdf文件,我想用文件夾的前綴重命名。我如何使用下面顯示的數據結構中的「RS」後面的文件夾名稱重命名pdf文件?我在這個論壇搜索了以前的帖子,並找到了一些例子,但每個問題都是獨特的,我無法適應我的情況。使用文件夾名稱作爲前綴重命名文件

當前數據結構:

C:\Users\KG\Downloads\RS\pulmonary\chapter1\1 a.pdf 
C:\Users\KG\Downloads\RS\pulmonary\chapter1\1 b.pdf 
C:\Users\KG\Downloads\RS\pulmonary\chapter2\2 a.pdf 
C:\Users\KG\Downloads\RS\pulmonary\chapter2\2 b.pdf 
C:\Users\KG\Downloads\RS\endocrine\1 b.pdf 
C:\Users\KG\Downloads\RS\endocrine\1 a.pdf 

預期的結果:

pulmonary1 a.pdf 
pulmonary1 b.pdf 
pulmonary2 a.pdf 
pulmonary2 b.pdf 
endocrine1 b.pdf 
endocrine1 a.pdf 

回答

0

如果x是你的文件路徑向量,正則表達式下面返回在你的例子中的文件名。

new.x = gsub(".*\\RS\\([a-z]*)\\(.*\\)?([0-9].*)", "\\1\\3", x) 

如果你可以有,比如說,「章」,而不是唯一的「章」,或者如果經過「章」或在文件名中的數字可以是兩個或多個數字,那麼正則表達式將需要很少有調整,使其更一般化。