路径匹配实用程序

pathmatch的Python项目详细描述


python实现git'swildmatchPOSIX.1-2008fnmatch

这个包的目的是提供一个符合posix标准和 允许与git兼容。

示例

frompathmatchimportwildmatch# Pattern matching auto-generated test files (extension .pyc, .pyo or .pyd inside tests/)pattern=u'tests/**/*.py[cod]'# Match single files:wildmatch.match(pattern,u'tests/auto.pyc')# Truewildmatch.match(pattern,u'auto.pyc')# False# Filter a collection:files=[u'tests/deep/auto.pyd',u'tests/module.py',u'package/auto.pyc',u'tests/auto.pyo']list(wildmatch.filter(pattern,files))# [u'tests/deep/auto.pyd', u'tests/auto.pyo']# Compile a patterncompiled=wildmatch.WildmatchPattern(pattern)compiled.match(u'tests/')# False

功能

支持wildmatch

目前,支持以下wildmatch功能:

  • wildstar**运算符和相关语义(/需要文本匹配)
  • 文字匹配
  • 问号?(任意字符)和星号*(任意字符串)运算符
  • 括号表达式[abc](可选字符)

括号表达式功能:

  • 否定(同时支持^!元字符)
  • 范围表达式a-z
  • 排序规则符号[.ch.]
  • 等价类语法[=e=],但回退到排序符号语义
  • 支持path_name标志以排除/(需要文本匹配)

有关详细信息,请参见test_wildmatch.py

限制:

  • case_fold(不区分大小写)选项不受支持
  • period(前导句点需要文本匹配)选项不受支持
  • 不支持带有多字符排序元素的反括号表达式
  • 不支持括号表达式的字符类[:alpha:]

欢迎捐款

fnmatch支持

专用的fnmatch模块尚未配置(这应该只是wildmatch的一个子集)。

贡献

测试

您可以使用以下命令执行测试:

python -m unittest discover -s . -p test*.py

许可证

麻省理工学院许可证,版权所有(c)2016 Charles Samborski

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java@AfterEach注释在Spring测试中被忽略   散列如何使用bouncy castle在Java中创建SHA512摘要字符串?   java无法使用Okhttp获取响应cookie   100个数的java阶乘   多线程如何在Java中实现对象计数器   java我的精灵不显示背景   java如何在com上应用PanelSlideListener。索特里。滑动面板。SlidengUpPanelLayout SlideUp库   java如何在JDBC中使用WHERE EXISTS函数   java Swing:标签前景中的白色被绘制为黑色   获取java的时间戳。util。另一个java的日期对象为(10/7/14)。util。日期对象(2014年10月7日星期二11:21:00)   java如何在Spring/OpenJPA 1中重新创建用于更新行锁定的选择   java在保存另一个maven项目中的类时,有没有办法让eclipse识别对该类的更改?   java如何解决Spring中的Servlet上下文错误?   java在mongodb中删除记录   显示的java片段与当前片段重叠,而不是替换它