欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python-re中search()函數(shù)的用法詳解(查找ip)

 更新時間:2021年03月18日 10:39:41   作者:愛代碼的小哥  
這篇文章主要介紹了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ù)的高級操作還在后邊哦!

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再進行查找
但是這里知道ip是沒有固定格式的,首先他的范圍是 0-255,但是他可能是1位數(shù),二位數(shù)或者三位數(shù),這里就需要進階了,來看下邊的代碼:
①確定單個數(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了
這樣就能得到字符串里第一個 0-255的值

②如果要多找?guī)讉€呢?
再舉個小例子:

str2 = "192168111123"
num = re.search(r"([01]\d\d|2[0-4]\d|25[0-5]){3}",str2)
print(num)

運行結(jié)果:

在這里插入圖片描述

給查找的字符在后邊加一個{n} n代表你要找?guī)状?,看例子我找的?次,所以最后找到的值是3個挨著的0-255的數(shù)。那么重點來啦

③找到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é)果:

在這里插入圖片描述

到此這篇關于Python-re中search()函數(shù)的用法詳解(查找ip)的文章就介紹到這了,更多相關Python search()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論