Python中怎么使用通配符匹配字符串
更新时间:2023-08-19前言
在 Python 中,通配符是一种用于匹配字符串的表达式。它以特殊字符来表示模式中的任意字符或字符序列。使用通配符可以非常方便地进行字符串匹配和筛选。在本文中,我们将探讨如何使用通配符在 Python 中进行字符串匹配。
使用fnmatch模块进行通配符匹配
Python 提供了一个名为 fnmatch 的模块,可以用于实现通配符匹配。fnmatch 模块提供了两个函数——fnmatch() 和 filter(),它们均可以用于字符串匹配。
fnmatch() 函数用于确定字符串是否匹配指定的模式。它采用两个参数:字符串和模式。模式可以包含一个或多个通配符。
import fnmatch string = "hello.txt" pattern = "*.txt" # 判断字符串是否匹配模式 if fnmatch.fnmatch(string, pattern): print("字符串匹配模式") else: print("字符串不匹配模式")
上述代码中,我们将字符串 hello.txt 与模式 *.txt 进行匹配。如果匹配成功,则输出 "字符串匹配模式"。
filter() 函数用于从一个字符串列表中筛选出与指定模式匹配的字符串。它使用两个参数:模式和字符串列表。
import fnmatch strings = ["hello.txt", "world.txt", "example.py"] pattern = "*.txt" # 筛选出与模式匹配的字符串 filtered = fnmatch.filter(strings, pattern) print(filtered)
上述代码中,我们将字符串列表 ["hello.txt", "world.txt", "example.py"] 中与模式 *.txt 匹配的字符串筛选出来,并将其打印输出。
总结
在 Python 中,fnmatch 模块提供了方便的方法来使用通配符进行字符串匹配。通过 fnmatch() 函数可以判断一个字符串是否匹配指定的模式,而通过 filter() 函数可以从字符串列表中筛选出与模式匹配的字符串。
使用通配符可以使字符串匹配和筛选等操作变得更加灵活和便捷。