在R语⾔默认⽬录下有⼀⽂件夹test,其下有三个⽂件,分别是, , ,现在要对这三个⽂件进⾏批量的修改。主要使⽤到了for 循环和sub()字符替换函数。思路是先通过list.files()函数将test⽂件夹下⾯的三个⽂件名读⾄变量,然后通过for循环来实现批量修改⽂件名。
1. 修改⽂件扩展名
folder<-setwd('~/test')
files<-list.files(folder)
for (f in files){
newname<-sub(".txt",'.xls',f)
}
dir()
显⽰结果:
[1] "text1.xls" "text2.xls" "text3.xls"
2. 删除⽂件扩展名
folder<-setwd('~/test')
files<-list.files(folder)
for (f in files){
newname<-sub('.xls','',f)
}
dir()
显⽰结果:王思懿个人资料
我们结婚了 中国《苹果》是真的做了?[1] "text1" "text2" "text3"
3. 增添⽂件扩展名
这⾥我们⽤到⼀个正则表达式,⽤‘$'代替字符的尾部,将字符尾部替换为'.doc'
folder<-setwd('~/test')
files<-list.files(folder)
for (f in files){
newname<-sub('$','.doc',f)
}
dir()
输出结果:
"text1.doc" "text2.doc" "text3.doc"
4. 修改⽂件名中的字符
folder<-setwd('~/test')
files<-list.files(folder)
for (f in files){
newname<-sub('xt','ab',f) #将原⽂件中的字符xt,替换为字符ab
}奥斯卡李冰冰
dir()
输出结果:
[1] "teab1.doc" "teab2.doc" "teab3.doc"
5. 删除⽂件名中的数字
胡兵性取向把实验⽬录下的⽂件分别修改为tab.doc,teb.doc, tdb.doc,⽤“\\d”正则表达式代替⽂件中的数字。
教师节贺卡简单又好看手工folder<-setwd('~/test')
files<-list.files(folder)
for (f in files){
newname<-sub('\\d','',f)
}
dir()
输出结果:
[1] "tab.doc" "tdb.doc" "teb.doc"
参考⽂章:
到此这篇关于使⽤R语⾔批量修改⽂件名的⽂章就介绍到这了,更多相关R语⾔批量修改⽂件名内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
发布评论