
經過自己面試的經驗,我幫大家對python的知識點進行歸類,讓大家能在最短時間內掌握核心知識點,更高效地搞定 Python 面試!
今天我為大家總結了python面試中,關于正則運算式的幾個例子!
1.python正則運算式中匹配(match)和查找(search)的區別
答:正則運算式中match和search的方法比較相似
相同點:都是在一個字串s中尋找pat子字串,如果能找到,就回傳一個Match物件,如果找不到,就回傳None,
不同點:mtach方法是從頭開始匹配,而search方法,可以在s字串的任一位置查找,
撰寫的代碼如下:

運行結果:

從結果中,我們可以看出,python中用match和search方法都可以反饋ours中的our字串,而對于flourish,只有search能回傳Match物件,而因為不是在頭部匹配到,所以match方法回傳了None,
2.再python中group和groups的區別
答:group和groups是兩個不同的函式,
一般,m.group(N) 回傳第N組括號匹配的字符,
而m.group() == m.group(0) == 所有匹配的字符,與括號無關,這個是API規定的,
m.groups() 回傳所有括號匹配的字符,以tuple格式(元組格式),不包括
m.group(0),即整個運算式.
m.groups() == (m.group(0), m.group(1),……)
3.python中運用正則去除以下html檔案中的標簽,只顯示文本資訊,
答:利用python正則運算式re模塊中的sub方法,將標簽替換為空字串,代碼如下:
編輯

運行結果:python小當家 python面試題匯總
4.python中用正則運算式提取字串中所有域名:
答:利用sub方法,將整個字串替換為只含域名的字串,代碼如下:

運行結果如下:

5.利用python正則運算式,從字串"hello world luozhixiang"中,提取出所有單詞
答:利用split方法分割空格或者用findall方法尋找到所有的單詞,代碼如下:

運行結果:['hello', 'world', 'luozhixiang']
6.python正則運算式中“.*”和“.*?”的區別
答:運算式 .* 的意思很好理解,就是單個字符匹配任意次,即貪婪匹配,
運算式 .*? 是滿足條件的情況只匹配一次,即懶惰匹配
演示代碼和演示結果如下:

7.利用python語言,使用正則將字串"羅志祥202004月真的很倒霉,替蔣凡當了3695489點傷害"中,連續5個以上數字替換成*


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/151720.html
標籤:Python
