Python-re中search()函數(shù)的用法詳解(查找ip)
1.首先來看一下search()和find()的區(qū)別
import re s1 = "2221155" #search 字符串第一次出現(xiàn)的位置 print(re.search("1",s1)) print(s1.find("1"))
它們的輸出分別是:
search():
函數(shù)返回的是查找的字符在字符串中的位置
find():
函數(shù)返回的也是在字符串中的位置
目前來看兩者并沒有什么區(qū)別,但是**search()**函數(shù)的高級(jí)操作還在后邊哦!
2.search查找ip
那么search()函數(shù)如何查找字符串中的ip地址呢來看例子
先說一種比較單一化的查找:
str1 = "192.168.111.123" ip = re.search(r"\d\d\d\.\d\d\d\.\d\d\d\.\d\d\d",str1) print(str1)
輸出結(jié)果:
這里要首先定義好ip的格式 xxx.xxx.xxx.xxx再進(jìn)行查找
但是這里知道ip是沒有固定格式的,首先他的范圍是 0-255,但是他可能是1位數(shù),二位數(shù)或者三位數(shù),這里就需要進(jìn)階了,來看下邊的代碼:
①確定單個(gè)數(shù)范圍在0-255:
re.search(r"[01]\d\d|2[0-4]\d|25[0-5]]",str)
這句代碼里邊的參數(shù)的意思是(| 為“或”):
第一位如果是0,1的話,后邊兩位隨便取值
第一位如果是2的話,那第二位就得是0到4,第三位隨意取值
第一位第二位如果是2和5的話,那么第三位只能是0到5了
這樣就能得到字符串里第一個(gè) 0-255的值
②如果要多找?guī)讉€(gè)呢?
再舉個(gè)小例子:
str2 = "192168111123" num = re.search(r"([01]\d\d|2[0-4]\d|25[0-5]){3}",str2) print(num)
運(yùn)行結(jié)果:
給查找的字符在后邊加一個(gè){n} n代表你要找?guī)状?,看例子我找的?次,所以最后找到的值是3個(gè)挨著的0-255的數(shù)。那么重點(diǎn)來啦
③找到ip
看代碼:
str_ip = "ssss192.168.1.1aaaa" ip = re.search(r"(([01]{0,1}\d{0,1}\d|2[0-4]\d|25[0-5])\.){3}([01]{0,1}\d{0,1}\d|2[0-4]\d|25[0-5])",str_ip) print(i
結(jié)果:
到此這篇關(guān)于Python-re中search()函數(shù)的用法詳解(查找ip)的文章就介紹到這了,更多相關(guān)Python search()函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python如何在一個(gè)py文件中獲取另一個(gè)py文件中的值(一個(gè)或多個(gè))
這篇文章主要介紹了python如何在一個(gè)py文件中獲取另一個(gè)py文件中的值(一個(gè)或多個(gè)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08python?教程實(shí)現(xiàn)?turtle海龜繪圖
這篇文章主要介紹了python?教程實(shí)現(xiàn)?turtle繪制海龜繪圖,文章基于python的相關(guān)資料展開turtle繪制海龜繪圖的詳細(xì)內(nèi)容,需要的小伙伴可以參考一下2022-05-05python mysql斷開重連的實(shí)現(xiàn)方法
這篇文章主要介紹了python mysql斷開重連的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Django數(shù)據(jù)庫遷移報(bào)錯(cuò)InconsistentMigrationHistory
最近在使用Django,學(xué)習(xí)了一下Django數(shù)據(jù)庫遷移,在執(zhí)行遷移命令時(shí),突然報(bào)錯(cuò),本文就總結(jié)了一下原因,感興趣的小伙伴們可以參考一下2021-05-05python循環(huán)監(jiān)控遠(yuǎn)程端口的方法
這篇文章主要介紹了python循環(huán)監(jiān)控遠(yuǎn)程端口的方法,涉及Python實(shí)現(xiàn)端口監(jiān)控的技巧,需要的朋友可以參考下2015-03-03對(duì)numpy中數(shù)組轉(zhuǎn)置的求解以及向量內(nèi)積計(jì)算方法
今天小編就為大家分享一篇對(duì)numpy中數(shù)組轉(zhuǎn)置的求解以及向量內(nèi)積計(jì)算方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10python實(shí)現(xiàn)定時(shí)發(fā)送郵件到指定郵箱
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)定時(shí)發(fā)送郵件到指定郵箱,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12在python里協(xié)程使用同步鎖Lock的實(shí)例
今天小編就為大家分享一篇在python里協(xié)程使用同步鎖Lock的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-02-02python 爬蟲一鍵爬取 淘寶天貓寶貝頁面主圖顏色圖和詳情圖的教程
今天小編就為大家分享一篇python 爬蟲一鍵爬取 淘寶天貓寶貝頁面主圖顏色圖和詳情圖的教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05