regex - 如何找到名称可能比预期名称长的文件?

标签 regex perl file search

我正在做一些测试,我有很多文件需要对其执行数据分析。我们的文件有一个命名约定,但有时有人会在文件名中添加更多内容。我正在寻找一种方法来查找名称的“核心”,然后保存整个文件名。

例如,我想找到WIRA_Rabcd_RT,但有人可能将文件名保存为RED_GREEN_BLUE_WIRA_Rabcd_RT.txt,所以我的文件夹将如下所示:

RED_GREEN_BLUE_WIRB_Rabcd_RT.txt
RED_GREEN_BLUE_WIRC_Rabcd_RT.txt
RED_GREEN_BLUE_WIRA_Rabcd_RT.txt ← I want to find this file, and open it.
RED_GREEN_BLUE_WIRF_Rabcd_RT.txt
RED_GREEN_BLUE_WIRG_Rabcd_RT.txt
RED_GREEN_BLUE_WIRT_Rabcd_RT.txt
RED_GREEN_BLUE_WIRW_Rabcd_RT.txt
RED_GREEN_BLUE_WIRQ_Rabcd_RT.txt

最佳答案

glob功能似乎可以解决问题:

my $dir = '/some/directory/';
my @files = glob($dir . '*WIRA_Rabcd_RT.txt');

# Make sure you get exactly one file, open it, etc.

关于regex - 如何找到名称可能比预期名称长的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5996590/

相关文章:

Python电话号码正则表达式

Perl:数组取消引用

c++ - 为什么这段代码总是返回零文件大小?

java - 将对象保存到文件

java - 从文本文件读取整数并存储到单独的变量中? (扫描器)

java - Java中通过正则表达式模式验证输入选项

ios - 如何在 swift 2 中的已解析 xml 变量中使用正则表达式获取时间模式

regex - Python 正则表达式向后和向前

mysql - 命令不能用作别名

javascript - 最可行的 WebSocket/Perl 解决方案