You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python:如何筛选列表中符合特定格式要求的文件名字符串

实现方案

直接使用精确全匹配的正则表达式即可满足全部4个筛选条件,针对大数据量场景推荐预编译正则提升执行效率。

正则规则说明

使用的正则表达式为 r'^AB\d{7}\.txt$',各部分对应要求如下:

  • ^ 锚定字符串起始位置,确保以AB开头
  • AB 匹配固定前缀
  • \d{7} 匹配恰好7位阿拉伯数字
  • \.txt 匹配固定后缀,.前加反斜杠转义避免匹配任意字符
  • $ 锚定字符串结束位置,确保没有多余的其他字符

代码示例

import re

# 预编译正则,大数据量下可避免循环中重复解析正则,性能提升明显
file_pattern = re.compile(r'^AB\d{7}\.txt$')
# 注意不要用list作为变量名,会覆盖Python内置的list类型,这里替换为file_list
file_list = ['AB8372943.txt', 'test.pdf', '123485940.docx', 'CW2839502.txt', 'AB1234567.txt', '283AB.txt']

# 筛选符合规则的文件名
result_list = [file for file in file_list if file_pattern.fullmatch(file)]

输出结果

执行后得到的result_list就是你需要的目标列表:
['AB8372943.txt', 'AB1234567.txt']

内容的提问来源于stack exchange,提问作者Kate

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:45:06