python 抓取ip地址的正則表達式 | Regular expression for finding ip address using Python

import re
pattern = re.compile('\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}')
matched = re.match(pattern, '192.12.23.32')
print(matched.group())

具體可以參考Python 正則表達式文檔。個人覺得不是很容易讀懂,只能邊用邊積累,而且一不用就忘光光。故此寫下筆記用作日後查詢。

以下解釋一下代碼。

re是python regular expression的包。
re.compile是把表達式先編譯好成狀態機,如果要後面重複使用這個pattern的話會快一點。
re.match第一個參數是pattern,第二個參數是string。pattern也可以用string代替。

matched = re.match('\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}', '192.12.23.32')

match是從頭開始找,如果在中間可以用re.search。

\d是數字,{1,3}是一到3個。\d{1,3}是1到3個數字。\.是一個點。如果不加\,.表示任意字符。

Leave a Comment

Your email address will not be published.