- 使用正则匹配查找,可以有多个查询关键字,将关键字按位置拼接成匹配规则
- 不进行子目录递归查找
实现代码:
def re_find_in_dir(path: str = '', pattern: list = []):
"""
在指定目录下,查找符合规则的目录、文件。规则有多个时,拼接成 '*a*b' 进行匹配
:param path: 指定目录
:param pattern: 匹配规则
:return: 符合规则的结果
"""
match_file = []
pattern_str = '.*' + '.*'.join(pattern)
re_pattern = re.compile(pattern=pattern_str)
file_list = os.listdir(path)
for file_name in file_list:
if re_pattern.search(file_name):
match_file.append(file_name)
return match_file