R文件夹路径,检索文件夹名称

时间:2015-06-16 11:52:01

标签: regex r

我有一个像这样的字符串

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

感谢您的帮助

1 个答案:

答案 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"

即。你得到路径中的最后一个文件夹名称。