Python 列表搜索中的全局搜索
鉴于这一名单:Python 列表搜索中的全局搜索,python,glob,Python,Glob,鉴于这一名单: aa = ['a.b.*', 'a.b.x', '*'] 我希望a.b.c使用globbing匹配aa[0]和aa[2] glob和fnmatch似乎希望文件名路径能够完成这项工作 是否有任何工具可以实现任意字符串搜索的全局搜索?该工具可以处理任意字符串,而不仅仅是文件名: >>> from fnmatch import fnmatch >>> aa = ['a.b.*', 'a.b.x', '*'] >>> fnmatch
aa = ['a.b.*', 'a.b.x', '*']
我希望a.b.c
使用globbing匹配aa[0]
和aa[2]
glob
和fnmatch
似乎希望文件名路径能够完成这项工作
是否有任何工具可以实现任意字符串搜索的全局搜索?该工具可以处理任意字符串,而不仅仅是文件名:
>>> from fnmatch import fnmatch
>>> aa = ['a.b.*', 'a.b.x', '*']
>>> fnmatch('a.b.c', aa[0])
True
>>> fnmatch('a.b.c', aa[1])
False
>>> fnmatch('a.b.c', aa[2])
True
第一个参数名为filename,因为glob模式样式匹配传统上用于过滤文件名。正如文档中所述,文件名分隔符(/
在POSIX系统上)对于fnmatch()
并不是特别的,并且不会改变字符串的匹配方式
如果要测试是否存在与给定字符串匹配的任何模式,请使用:
可用于任何字符串,而不仅仅是文件名:
>>> from fnmatch import fnmatch
>>> aa = ['a.b.*', 'a.b.x', '*']
>>> fnmatch('a.b.c', aa[0])
True
>>> fnmatch('a.b.c', aa[1])
False
>>> fnmatch('a.b.c', aa[2])
True
第一个参数名为filename,因为glob模式样式匹配传统上用于过滤文件名。正如文档中所述,文件名分隔符(/
在POSIX系统上)对于fnmatch()
并不是特别的,并且不会改变字符串的匹配方式
如果要测试是否存在与给定字符串匹配的任何模式,请使用: