首页 > 解决方案 > 从R中的文件路径中提取TOP目录

问题描述

我需要有关如何从给定路径中提取第一个(或)顶级目录的指导。这包括第一个斜线和最后一个斜线。例如,在路径:“/chemicalemergencies/category/test-page1.html”中,我需要提取“/chemicalemergencies/” 我已经使用 str_extract 和 regex 来识别模式,但问题是它返回 ANY匹配。如果 URL 有重复的文件夹,这会出现问题。因此,例如,如果路径是“/chemicalemergencies/category/chemicalemergencies/test-page1.html”,它将返回两个结果,而我只需要第一个。如何在字符串中的第一个匹配项后使模式检测停止?

Sys.time()
#i=4
for (i in 1:nrow(wwwdevurls)) {
  pathextract_wwwdev <- str_extract(wwwdevurls[i,3],"\\/([A-z0-9]+)\\/")
  pathextract_wwwdev.df[i,1] <- pathextract_wwwdev #Load pathextract into pathextract.df
  pathextract_wwwdev.df[i,2] <- wwwdevurls[i,1] #Load CIO into pathextract.df
}
Sys.time()

标签: rregex

解决方案


使用^[^/]*(/[^/]*/)
斜杠中的第一个目录位于组 1 中。


推荐阅读