簡體   English   中英

使用list.files(pattern = ???)僅列出包含az和0-9字符的文件,忽略具有特殊字符的文件

[英]Using list.files(pattern = ???) to only list files with characters from a-z and 0-9, ignore files with special characters

我正在嘗試使用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)

任何人都可以建議我可以添加到模式參數中的正則表達式,以查找僅包含[az]和/或[0-9]但不包含任何其他內容的文件名,沒有特殊的字符?

如果您只想包含字母或數字,還需要以某種方式說明擴展名。 以下命令中的模式以一個或多個字母和/或數字開頭,然后以句點和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 )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM