首頁(yè)技術(shù)文章正文

正則表達(dá)式中貪婪模式與非貪婪模式的區(qū)別

更新時(shí)間:2021-03-05 來(lái)源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif

(1)問(wèn)題分析
面試官主要考核應(yīng)聘者對(duì)正則表達(dá)式的了解程度
(2)核心問(wèn)題講解
在形式上非貪婪模式有一個(gè)“?”作為該部分的結(jié)束標(biāo)志。
在功能上貪婪模式是盡可能多的匹配當(dāng)前正則表達(dá)式,可能會(huì)包含好幾個(gè)滿足正則表達(dá)式的字符串,非貪婪模式,在滿足所有正則表達(dá)式的情況下盡可能少的匹配當(dāng)前正則表達(dá)式。
(3)問(wèn)題擴(kuò)展

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)結(jié)合項(xiàng)目中使用
無(wú)



猜你喜歡:

RDD數(shù)據(jù)丟失后如何恢復(fù)?RDD容錯(cuò)機(jī)制介紹

【mysql第二次安裝不了】mysql安裝失敗怎么清理干凈?

使用compile()函數(shù)編譯正則表達(dá)式【Python技術(shù)文章】

Python+數(shù)據(jù)分析培訓(xùn)課程

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!