[编辑] 无捕获组和命名组 精心设计的 REs 也许会用很多组,既可以捕获感兴趣的子串,又可以分组和结构化 RE 本身.在复杂的 REs 里,追踪组号变得困难.有两个功能可以对这个问题有所帮助.它们也都使用正则表达式扩展的通用语法,因此我们来看看第一个. Perl 5 对标准正则表达式增加了几个附加功能,Python 的 re 模块也支持其中的大部分.选择一个新的单按键元字符或一个以 "\" 开始的特殊序列来表示新的功能,而又不会使 Perl 正则表达式与标准正则表达式产生混乱是有难度…
import os import re pattern=re.compile(r'(\d{4})-(\d{2})-(\d{2})-b(\d{3})') // 要匹配的目录格式 for root,dirs,files in os.walk(r"/home/os-hy01"): for dir in dirs: if pattern.match(dir): // 符合格式的就打印 print(dir) 打印结果: 2018-03-16-b018 2019-03-16-b019 2020-0…
.(句点)匹配除了换行之外的所有一个字符, .*(点-星)匹配除了换行外的所有字符 >>> >>> r=re.compile(r'.*')>>> r.search('How are you\nFine thank you and you\nI am fine too').group()'How are you'>>> 这个例子可以看出.*(点-星)匹配除了换行外的所有字符,但无法匹配换行符,如何匹配包括换行符的所有字符呢? 1.通过传…