Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
列出R目录中的嵌套Excel文件_R_Excel_Regex_Import_Readr - Fatal编程技术网

列出R目录中的嵌套Excel文件

列出R目录中的嵌套Excel文件,r,excel,regex,import,readr,R,Excel,Regex,Import,Readr,我在Windows10上使用以下目录结构 C: ├── my-R-working-directory/ ├── excel01.xlsx ├── excel02.xlsx ├── nested-folder-A | ├── excel03.xlsx └── nested-folder-B └── excel04.xlsx 我可以使用以下命令直接列出工作目录中的所有Excel文件: getwd() #> "C:/my-R

我在Windows10上使用以下目录结构

C:
├── my-R-working-directory/
    ├── excel01.xlsx
    ├── excel02.xlsx
    ├── nested-folder-A
    |   ├── excel03.xlsx
    └── nested-folder-B
        └── excel04.xlsx
我可以使用以下命令直接列出工作目录中的所有Excel文件:

getwd()
#> "C:/my-R-working-directory"

list.files("path/of/folder", pattern = "\\.xlsx$", full.names = TRUE)
#> [1] "C:/my-R-working-directory/excel01.xlsx
#> [2] "C:/my-R-working-directory/excel02.xlsx
对于
模式
参数,我可以使用什么正则表达式来列出一个嵌套级别的所有Excel文件?换句话说,我只想在
nested-folder-A
nested-folder-B
中查看Excel文件,这将是
excel03.xlsx
excel04.xlsx
(以及文件夹中恰好有一层深度的任何其他Excel文件)

我的想法是使用您在下面看到的内容,但它返回
字符(0)
,我认为这意味着我的正则表达式是错误的:

list.files("path/of/folder", pattern = "\\\\.xlsx$", full.names = TRUE)
#> character(0)

我使用了在工作目录中查找的
模式=“\\\.xlsx$”
,并尝试升级一级,即
模式=“\\\\.xlsx$”
。尝试失败。正确的方法是什么?

如果查看
list.files()
中的
recursive
参数,可以查看较低级别目录中的文件。结合
pattern=“\\.xlsx$”
将匹配所有递归目录中的Excel文件

list.files(“path/of/folder”,pattern=“\\.xlsx$”,full.names=TRUE,recursive=TRUE)

如果要执行特定于级别的递归列表文件,这可能会有所帮助