微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

一个正则表达式引起的杂谈

re.compile(r'(?s)\s*usage: (.*?)(\n[ \t]*\n|$)')

一开始咋也不能明白啥意思

探索第一步:

(.*?)非贪婪模式的正则匹配


http://www.jb51.cc/article/p-cpcviwtg-ry.html

博客介绍的非常好


(?s)

正则 (?i,m,s,x,g) 正则i,g 这些是模式修正符 -- 解说正则表达式模式中使用的修正符 i 如果设定此修正符,模式中的字符将同时匹配大小写字母。 m 当设定了此修正符,“行起始”和“行结束”除了匹配整个字符串开头和结束外,还分别匹配其中的换行符的之后和之前。 s 如果设定了此修正符,模式中的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。 x 如果设定了此修正符,模式中的空白字符除了被转义的或在字符类中的以外完全被忽略,在未转义的字符类之外的 # 以及下一个换行符之间的所有字符,包括两头,也都被忽略。 e 如果设定了此修正符,preg_replace() 在替换字符串中对逆向引用作正常的替换

原文地址:https://www.jb51.cc/regex/361987.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐