亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在文檔中搜索IP地址

如何在文檔中搜索IP地址

慕婉清6462132 2021-03-19 21:18:25
所以我有一個文檔(純文本),我正在嘗試從中提取所有IP地址。我能夠使用正則表達式提取它們,但是它也包含了大量的版本號。我嘗試使用,string.find()但是它要求我能夠找到用于行尾的轉義符(IP地址始終是一行的最后一件事),并且對于行末尾的轉義符對我來說是未知的。有人知道我該如何提取這些地址?
查看完整描述

2 回答

?
呼如林

TA貢獻1798條經驗 獲得超3個贊

如果您的地址始終在一行的末尾,請在該行上定位:


ip_at_end = re.compile(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}$', re.MULTILINE)

此正則表達式僅匹配行尾的點分四邊形(4組數字,中間有點)。


演示:


>>> import re

>>> ip_at_end = re.compile(r'(?:[0-9]{1,3}\.){3}[0-9]{1,3}$', re.MULTILINE)

>>> example = '''\

... Only addresses on the end of a line match: 123.241.0.15

... Anything else doesn't: 124.76.67.3, even other addresses.

... Anything that is less than a dotted quad also fails, so 1.1.4

... does not match but 1.2.3.4

... will.

... '''

>>> ip_at_end.findall(example)

['123.241.0.15', '1.2.3.4']


查看完整回答
反對 回復 2021-03-26
?
蝴蝶不菲

TA貢獻1810條經驗 獲得超4個贊

描述

這將匹配并驗證ipv4地址,并確保各個字節在0-255的范圍內

(?:([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])

http://img1.sycdn.imooc.com//605d7f7500016dcd04120287.jpg

免責聲明

是的,我意識到OP要求使用Python解決方案。僅包含此PHP解決方案以說明該表達式的工作原理


PHP的例子

<?php

$sourcestring="this is a valid ip 12.34.56.78

this is not valid ip 12.34.567.89";

preg_match_all('/(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])/i',$sourcestring,$matches);

echo "<pre>".print_r($matches,true);

?>


$matches Array:

(

    [0] => Array

        (

            [0] => 12.34.56.7

        )


)


查看完整回答
反對 回復 2021-03-26
  • 2 回答
  • 0 關注
  • 679 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號