1

何千ものサブディレクトリを含むディレクトリがあります。

各サブディレクトリは URL 名で始まります。次に例を示します。/australia.gov.au_about-australia

「australia.gov.au」など、特定の文字列で始まるすべてのサブディレクトリのリストを取得したいと考えています。

list.dirs関数がパターン マッチングを許可していないように見えますか?

私は次のことを試しましたが、役に立ちませんでした:

testSite <- "australia.gov.au"
list.files(paste0("main-directory/",paste0("^[",testSite,"]")), 
    full.names = TRUE, recursive=TRUE, ignore.case = TRUE)`
4

2 に答える 2

3

Filterディレクトリリストをフィルタリングするために使用できます

testSite <- "australia.gov.au"
Filter(function(x) grepl(paste0("^", gsub(".", "\\.", testSite, fixed=TRUE)), x),
    list.dirs())

マッチングを行うために、URL を正規表現に変換する追加作業が行われます。

于 2015-11-02T23:14:30.893 に答える
1

最初の部分は @MrFlick の回答に従いますが、残りは少し単純化します。

 re <- paste0("^", gsub(".", "\\.", testSite, fixed=TRUE))
 grep(re,list.dirs(),value=TRUE)
于 2015-11-02T23:17:35.103 に答える