您的位置 首页 知识分享

Python正则表达式非贪婪匹配结果减少的原因是什么?

正则分组非贪婪匹配时结果减少的原因分析 在正则表达式中,.匹配任意字符,为了避免匹配任何字符导致输出结果错误,…

Python正则表达式非贪婪匹配结果减少的原因是什么?

正则分组非贪婪匹配时结果减少的原因分析

在正则表达式中,.匹配任意字符,为了避免匹配任何字符导致输出结果错误,需要将.转义为 .。

在给定的正则表达式 http://tiebapic.bdu.com/(.+?)sign=.+?/(.+?).(.+?)?tbpicau= 中,.+?” 的含义是匹配一个或多个字符,并且是非贪婪匹配的。非贪婪匹配意味着它会尽可能少地匹配字符。

在提供的 url 中,928d9177f3e67097e8a81c87dc79f3df9dc55aa.jpg 少了 7 个字符,这是因为转义. 操作符没有被应用于中间匹配字符点。

立即学习“”;

以下是正确的正则表达式:

pattern = re.compile(r'http://tiebapic.baidu.com/(.+?)sign=.+?/(.+?).(.+?)?tbpicau=', re.S)
登录后复制

修改后的正则表达式将确保.匹配任意字符,从而正确匹配 url 中的文件名部分。

以上就是Python正则表达式非贪婪匹配结果减少的原因是什么?的详细内容,更多请关注php中文网其它相关文章!

本文来自网络,不代表甲倪知识立场,转载请注明出处:http://www.spjiani.cn/wp/5287.html

作者: nijia

发表评论

您的电子邮箱地址不会被公开。

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部