Python 中的正则表达式匹配文件夹中的所有文件

abn*_*abn 1 python regex path

我对正则表达式很不好。我正在尝试根据文件名在文件夹中查找文件。大多数文件名都是格式GSE1234_series_matrix.txt,因此我一直使用os.path.join("files", GSE_num + "_series_matrix.txt"). 但是,有一些文件的名称类似于GSE1234-GPL22_series_matrix.txt. 我不确定如何处理以 GSE 编号开头并以 _series_matrix.txt 结尾的所有文件(可能在一个语句中)。我真的很感激任何帮助。

编辑 - 我在一个文件夹中有这些系列矩阵文本文件,我在其中提到了使用路径连接的路径。我还输入了一个文本文件,其中包含所有 GSE 编号。这样,它仅针对选定的 GSE 编号运行脚本。因此,并非文件夹中的所有内容都在 GSE 编号列表中,并且该列表仅包含 GSE 编号,而不包含 GPL。例如,文件 GSE1234-GPL22_series_matrix.txt 在列表中将是 GSE1234。

Kev*_*vin 6

完全跳过使用正则表达式。

good_filenames = [name for name in filenames if name.startswith("GSE") and name.endswith("_series_matrix.txt")]
Run Code Online (Sandbox Code Playgroud)