首页 > 编程语言 > 详细

python-正则表达式1消-?号除贪婪模式

时间:2019-05-31 23:26:11      阅读:101      评论:0      收藏:0      [点我收藏+]
import re
# 判断是否包含b
# line = "booooooobby123"
# regex_str = "^b.*"
# if re.match(regex_str, line) :
#     print(‘yes‘)

# 结果是bb 原因:正则表达式是一种贪婪的模式 一直会匹配到最后一种返回
line = ‘booooooooobby123‘
regex_str = ".*(b.*b).*"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))

# 结果是booooooooobb ?表示 匹配前面的子表达式零次或一次 在这里可以理解成解除贪婪的模式
line = ‘booooooooobby123‘
regex_str = ".*?(b.*b).*"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))


# 结果返回booooooooob 这个是正确的写法 加了两个?解除贪婪的模式
line = ‘booooooooobby123‘
regex_str = ".*?(b.*?b).*"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))

  

python-正则表达式1消-?号除贪婪模式

原文:https://www.cnblogs.com/shaoshao/p/10957941.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!