我正在尝试使用list.files()
生成路径列表,并且正在使用以下内容:
paths <- list.files(path = params$path[[1]],
pattern = '*',
all.files = TRUE,
full.names = TRUE,
recursive = TRUE,
ignore.case = TRUE)
但是,我的文件名带有特殊字符(重音符号,问号等)。这些导致了我的问题。现在,我想忽略此列表中的那些文件。我正在尝试使用pattern = param执行此操作,但是没有任何运气。
开始尝试以下操作,但现在找不到任何文件。
paths <- list.files(path = params$path[[1]],
pattern='(a-z)',
all.files=TRUE,
full.names=TRUE,
recursive=TRUE,
ignore.case=TRUE)
有人可以建议我可以添加到模式参数中的正则表达式来查找仅包含[a-z]和/或[0-9]但不包含其他任何字符,没有特殊字符的文件名吗?
答案 0 :(得分:0)
如果只想包含字母或数字,则还需要以某种方式说明扩展名。以下命令中的模式以一个或多个字母和/或数字开头,然后以句点和3或4个字母和/或数字结尾。
paths <- list.files( path=params$path[[1]], pattern='^[a-z0-9]+?\\.[a-z0-9]{3,4}$', all.files=TRUE, full.names=FALSE, recursive=TRUE, ignore.case=TRUE )