美文网首页
Python正则表达式之贪婪匹配与非贪婪匹配

Python正则表达式之贪婪匹配与非贪婪匹配

作者: 松鼠的读书笔记 | 来源:发表于2019-02-11 21:22 被阅读8次

1. 什么是贪婪匹配:贪婪匹配在匹配字符串时总是尝试匹配尽可能多的字符。

2. 什么是非贪婪匹配:与贪婪匹配相反,非贪婪匹配在匹配字符串时总是尝试匹配尽可能少的字符。

  1. Python里数量词默认是贪婪模式的,在"*","?","+","{m,n}"后面加上?,可使贪婪模式变成非贪婪模式。

下面我们用代码说明:

import re

# 贪婪匹配
greedy_pattern = re.compile(r'ab.*c')
greedy_match = greedy_pattern.match('abcaxc')
print("贪婪匹配结果:" + greedy_match.group())

# 非贪婪匹配
not_greedy_pattern = re.compile(r'ab.*?c')
not_greedy_match = not_greedy_pattern.match('abcaxc')
print("非贪婪匹配结果:" + not_greedy_match.group())

输出:
贪婪匹配结果:abcaxc
非贪婪匹配结果:abc


心中有梦想,眼前有目标
手中有计划,脚下有行动
2019 开工大吉!

相关文章

  • 贪婪与非贪婪匹配

    1.什么是正则表达式的贪婪与非贪婪匹配 贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。如上面使...

  • 正则表达式的贪婪模式和非贪婪模式

    一、什么是贪婪模式和非贪婪模式? 定义 贪婪模式:正则表达式趋向于匹配最大长度。 非贪婪模式:正则表达式趋向于匹配...

  • 正则表达式:贪婪匹配与非贪婪匹配

    贪婪匹配 贪婪匹配:在满足匹配时,匹配尽可能长的字符串,默认情况下,采用贪婪匹配 非贪婪匹配 非贪婪匹配:在满足匹...

  • 关于python正则表达式的补充

    1.贪婪匹配和非贪婪匹配 贪婪匹配:顾名思义,贪婪,匹配满足条件越多越好 非贪婪匹配,相反,匹配满足条件越少越好p...

  • JavaScript 正则表达式( 匹配网页的图片地址)

    正则表达式 - 元字符 贪婪模式与非贪婪模式 贪婪与非贪婪模式影响的是被量词修饰的子表达式的匹配行为;贪婪模式 在...

  • Day17 贪婪、非贪婪、re模块

    一、贪婪和非贪婪 非贪婪: 在正则表达式中控制匹配不确定次数的符号后边可以加?,来表示尽可能少的匹配。 在贪婪的时...

  • Day18学习总结-正则表达式和Pygame

    贪婪与非贪婪 非贪婪:在正则中控制匹配不确定次数的符号后边可以加?,来表示尽可能少的匹配贪婪:在贪婪的时候,匹配是...

  • Python 高级 8正则表达式

    正则表达式、re模块、匹配单个字符、匹配多个字符、匹配开头结尾、匹配分组、re模块的高级用法、python贪婪和非...

  • Python正则表达式之贪婪匹配与非贪婪匹配

    1. 什么是贪婪匹配:贪婪匹配在匹配字符串时总是尝试匹配尽可能多的字符。 2. 什么是非贪婪匹配:与贪婪匹配相反,...

  • 正则表达式高级使用

    一,贪婪与非贪婪 贪婪:尽可能多的匹配 非贪婪:尽可能少的匹配 非贪婪符可以用在*,?,+的后面 *? 重复1次 ...

网友评论

      本文标题:Python正则表达式之贪婪匹配与非贪婪匹配

      本文链接:https://www.haomeiwen.com/subject/cvdceqtx.html