根据文件名

时间:2017-01-18 17:02:39

标签: r regex

我在文件夹中有以下文件名:1_myfile.txt,2_myfile.txt,3_myfile.txt和4_best_myfile.txt,5_best_myfile.txt,6_best_myfile.txt。

我想在列出带有list.files()的文件时在pattern =“”中使用regex,以便从包含“_best_myfile.txt”的文件中包含“_myfile.txt”的子集。我尝试使用:

  

files = list.files(path =“。”,“* [^ best_myfile.txt] $”)

不幸的是它不起作用,因为它只设置了不以.txt结尾的文件。

有人能帮帮我吗?

提前致谢

1 个答案:

答案 0 :(得分:1)

我们可以将pattern修改为"\\d+_best_myfile\\.txt"

files <- list.files("\\d+_best_myfile\\.txt") 

它表示一个或多个数字(\\d+)后跟_和字符串best_myfile.txt。另请注意,某些字符需要进行转义,即.是元字符,它表示任何字符。因此,要获得文字点字符,我们需要转义它(\\