【发布时间】:2018-10-29 12:22:33
【问题描述】:
在使用 list.files 时匹配非常特定的模式时遇到问题。我有一组具有这种模式的文件“namefile_YYYY-mm-dd.csv”,而且,如果一个文件生成了不止一次,那么我会有这样的东西:” namefile_YYYY-mm-dd_something-else.csv"。这是我用的:
list.files(path = "\\projects\\datasets", pattern = "^Participants_(.*)csv$",all.files = FALSE, full.names = FALSE, recursive = FALSE)
这是输出: “参与者_2018-07-18.csv” “参与者_2018-07-19.csv” “参与者_2018-07-21.csv” “参与者_2018-07-28.csv” “Participants_2018-08-04 new.csv” “参与者_2018-08-04.csv” “参与者_2018-08-11.csv” “Participants_2018-08-18 - for-analysis.csv” “参与者_2018-08-18.csv” “参与者_2018-08-25.csv” “参与者_2018-09-01.csv” "Participants_2018-09-08.csv"
但我不想要所有这些。我希望该列表仅包含这种格式 "Participants_2018-07-18.csv" 的名称,并排除任何其他格式的名称,例如:"Participants_2018-08-04 new .csv"、"Participants_2018-08-18 - for-analysis.csv"
我尝试了几种方法,例如
list.files(path = "\\projects\\datasets", pattern = "^Participants_[0-9]\\.csv$",all.files = FALSE, full.names = FALSE, recursive = FALSE)]
但是列表是空的。有什么建议吗?
【问题讨论】: