我有一个像这样的字符串
SERVER/MONTHLY/REPORT FOLDER NAME/REPORT.XLS
SERVER
SERVER/AD_HOC/REPORT FOLDER NAME/REPORT.XLS
SERVER/WEEKLY/MAIN FOLDER NAME/SUB FOLDER/REPORT NAME.XLS
SERVER/DAILY/REPORT FOLDER NAME/REPORT.XLS
我想要一份REPORT FOLDER NAME的唯一列表
我有一个包含所有这些信息的变量类型文件夹
folders <- list.dirs(path="foo", full.names=F, recursive=TRUE)
folders.split <- strsplit(folders, "/")
从这一点来看,我有点卡住,因为我认为它涉及正则表达式
基本上所有在其文件夹路径中都有DAILY,MONTHLY,WEEKLY,AD-HOC的文件夹我希望能够从中直接提取REPORT FOLDER NAME
感谢您的帮助
答案 0 :(得分:0)
如果我的正则表达方式没有完全错误,如果我理解你的话,这可能会有效:
folders <- c("SERVER/AD_HOC/REPORT FOLDER NAME/REPORT.XLS",
"SERVER/WEEKLY/MAIN FOLDER NAME/SUB FOLDER/REPORT NAME.XLS",
"SERVER/DAILY/REPORT FOLDER NAME/REPORT.XLS")
basename(substr(folders, 0, regexpr("/[^/]*$", folders)))
返回
[1] "REPORT FOLDER NAME" "SUB FOLDER" "REPORT FOLDER NAME"
即。你得到路径中的最后一个文件夹名称。