欢迎访问宙启技术站
智能推送

使用glob()函数实现Python中的文件名模糊匹配

发布时间:2023-12-28 11:13:18

在Python中,可以使用glob模块的glob()函数实现文件名的模糊匹配。glob()函数根据指定的模式匹配文件名,返回匹配的文件名列表。

glob()函数支持的通配符包括:

- *:匹配0个或多个字符

- ?:匹配一个任意字符

- []:匹配指定范围内的字符

- !:排除指定范围内的字符

现在,我们来看几个使用glob()函数的例子:

1. 匹配所有以.txt结尾的文件:

import glob

files = glob.glob('*.txt')
print(files)

输出:

['file1.txt', 'file2.txt', 'file3.txt']

2. 匹配所有以字母开头的txt文件:

import glob

files = glob.glob('[a-zA-Z]*.txt')
print(files)

输出:

['abc.txt', 'def.txt']

3. 匹配所有以字母开头并且以数字结尾的文件:

import glob

files = glob.glob('[a-zA-Z]*[0-9].*')
print(files)

输出:

['abc1.txt', 'abc2.jpg']

4. 匹配所有不以数字开头的txt文件:

import glob

files = glob.glob('[!0-9]*.txt')
print(files)

输出:

['abc.txt', 'def.txt']

5. 匹配指定文件夹下的所有文件:

import glob

files = glob.glob('/path/to/folder/*')
print(files)

输出:

['/path/to/folder/file1.txt', '/path/to/folder/file2.jpg', '/path/to/folder/subfolder']

6. 匹配指定文件夹下的所有子文件夹:

import glob

folders = glob.glob('/path/to/folder/*/')
print(folders)

输出:

['/path/to/folder/subfolder/']

总结:

glob()函数是一个非常方便的工具,可以用于对文件名进行模糊匹配,根据指定的模式返回匹配的文件列表。通过使用不同的通配符,可以实现各种不同的文件名匹配需求。