正则表达式中贪婪模式和非贪婪模式的区别在哪里?

在功能上贪婪模式是尽可能多的匹配当前正则表达式,可能会包含好几个满足正则表达式的字符串,非贪婪模式,在满足所有正则表达式的情况下尽可能少的匹配当前正则表达式。 Python技术文章2021-03-05 |传智教育 |正则表达式中贪婪模式与非贪婪模式的区别

(1)问题分析
面试官主要考核应聘者对正则表达式的了解程度(2)核心问题讲解
在形式上非贪婪模式有一个“?”作为该部分的结束标志。
在功能上贪婪模式是尽可能多的匹配当前正则表达式,可能会包含好几个满足正则表达式的字符串,非贪婪模式,在满足所有正则表达式的情况下尽可能少的匹配当前正则表达式。(3)问题扩展

import re
example = "<li>goods</li><li>name</li>"
# 贪婪模式
greed_pattern = re.compile("<li>.*</li>")
# 非贪婪模式
not_greed_pattern = re.compile("<li>.*?</li>")
greed_result = greed_pattern.search(example)
not_greed_result = not_greed_pattern.search(example)
print(f"贪婪模式:{greed_result.group()}")
print(f"非贪婪模式:{not_greed_result.group()}")

(4)结合项目中使用
猜你喜欢:

complie()函数预编译正则表达式

Python正则表达式re模块常用函数有哪些?

使用Django中间件的六种方法[python培训]

传智教育python+数据分析课程

Python教程

Python不同数据类型可以相互转换吗?

2021-7-11 14:37:59

Python教程

Python如何进行内存管理?

2021-7-11 20:38:13

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索