Python编程:fnmatch匹配文件名

简介: Python编程:fnmatch匹配文件名

fnmatch提供了一种类似Unix shell-style风格的文件名匹配方式

匹配模式

* 匹配任何字符
? 匹配一个字符
[seq] 匹配在集合seq 中的任意字符
[!seq]  匹配不在集合seq 中的任意字符

代码示例

import fnmatch
filenames = [
    "China.txt",
    "Japan.txt",
    "America.py",
    "Korea.conf",
]
# fnmatch 和 fnmatchcase 匹配文件,区别不太明显
for filename in filenames:
    if fnmatch.fnmatch(filename, '*.txt'):
        print(filename)
"""
China.txt
Japan.txt
"""
for filename in filenames:
    if fnmatch.fnmatchcase(filename, '*.txt'):
        print(filename)
"""
China.txt
Japan.txt
"""
# filter 过滤符合的文件
filenames = fnmatch.filter(filenames, "*.txt")
# 类似:[n for n in names if fnmatch(n, pattern)]
print(filenames)
# ['China.txt', 'Japan.txt']
# translate 翻译成re 正则表达式
print(fnmatch.translate("*.txt"))
# (?s:.*\.conf)\Z

参考:

fnmatch — Unix filename pattern matching

相关文章
|
人工智能 编译器 Python
Python re 正则表达式 数据匹配提取 基本使用
模式字符串使用特殊的语法来表示一个正则表达式: 字母和数字表示他们自身。一个正则表达式模式中的字母和数字匹配同样的字符串。 多数字母和数字前加一个反斜杠时会拥有不同的含义。 标点符号只有被转义时才匹配自身,否则它们表示特殊的含义。 反斜杠本身需要使用反斜杠转义。 正则表达式通常都包含反斜杠"\\"以及小括号"\(\)",模式元素(如 r'\t',等价于 '\\t')匹配相应的特殊字符。
431 0
Python re 正则表达式 数据匹配提取 基本使用
|
SQL Python
Python基础记录下字符串模糊匹配的方式
使用Python的difflib库中get_close_matches方法
492 0
Python基础记录下字符串模糊匹配的方式
|
Python
【Python零基础入门篇 · 39】:贪婪匹配和非贪婪匹配、原生字符串
【Python零基础入门篇 · 39】:贪婪匹配和非贪婪匹配、原生字符串
217 0
【Python零基础入门篇 · 39】:贪婪匹配和非贪婪匹配、原生字符串
|
Python
【Python零基础入门篇 · 25】:正则基础、正则的高级用法、贪婪匹配与非贪婪匹配、原生字符串
【Python零基础入门篇 · 25】:正则基础、正则的高级用法、贪婪匹配与非贪婪匹配、原生字符串
371 0
【Python零基础入门篇 · 25】:正则基础、正则的高级用法、贪婪匹配与非贪婪匹配、原生字符串
|
算法 计算机视觉 Python
Python 机器视觉 - 基于opencv图像模板匹配实现的简单人脸匹配实例演示,matchTemplate的6大模板匹配算法
Python 机器视觉 - 基于opencv图像模板匹配实现的简单人脸匹配实例演示,matchTemplate的6大模板匹配算法
599 1
Python 机器视觉 - 基于opencv图像模板匹配实现的简单人脸匹配实例演示,matchTemplate的6大模板匹配算法
|
PHP Python
Python、PHP:手机号匹配正则表达式
Python、PHP:手机号匹配正则表达式
287 0
Python、PHP:手机号匹配正则表达式
python——正则表达式(匹配对象)
python——正则表达式(匹配对象)
|
索引 Python
Python 技术篇-index()字符串倒叙匹配获取索引,字符串切片反向输出,逆向输出字符串
Python 技术篇-index()字符串倒叙匹配获取索引,字符串切片反向输出,逆向输出字符串
461 0
Python 技术篇-index()字符串倒叙匹配获取索引,字符串切片反向输出,逆向输出字符串
|
Python
Python编程:fuzzywuzzy字符串模糊匹配
Python编程:fuzzywuzzy字符串模糊匹配
494 0
|
Unix Python
Python编程:fnmatch匹配文件名
Python编程:fnmatch匹配文件名
201 0

推荐镜像

更多