溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

匹配IP地址與域名的正則表達(dá)式是什么

發(fā)布時(shí)間:2021-08-05 09:09:25 來源:億速云 閱讀:729 作者:chen 欄目:互聯(lián)網(wǎng)科技

這篇文章主要講解了“匹配IP地址與域名的正則表達(dá)式是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“匹配IP地址與域名的正則表達(dá)式是什么”吧!

一個(gè)完整的域名,由根域、頂級(jí)域、二級(jí)、三級(jí)……域名構(gòu)成,每級(jí)域名之間用點(diǎn)分開,每級(jí)域名由字母、數(shù)字和減號(hào)構(gòu)成(第一個(gè)字母不能是減號(hào)),不區(qū)分大小寫,長(zhǎng)度不超過63。

單獨(dú)的名字可以由正則表達(dá)式[a-zA-Z0-9][-a-zA-Z0-9]{0,62}來匹配,而完整的域名至少包括兩個(gè)名字(比如google.com,由google和com構(gòu)成),最后可以有一個(gè)表示根域的點(diǎn)(在規(guī)范中,最后有一個(gè)點(diǎn)的才是完整域名,但一般認(rèn)為包括兩個(gè)以上名字的域名也是完整域名,哪怕它后面沒有點(diǎn))。

匹配完整域名的正則表達(dá)式:

復(fù)制代碼 代碼如下:


[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?

一個(gè)IP字串,由四段組成,每一段是0~255的數(shù)字,段與段之間用小數(shù)點(diǎn)隔開,比如61.139.2.69就是一個(gè)合法的IP字串。

  如果正則表達(dá)式寫成\d{1,3}(\.\d{1,3}){3}無疑是不負(fù)責(zé)的,因?yàn)樗梢云ヅ?00.400.555.666這樣的非法IP字串。

  要匹配一個(gè)0~255之間的數(shù),有幾種匹配方式,下面是其中一種:

匹配 正則表達(dá)式 說明

  0~9 \d 單個(gè)數(shù)字
  10~99 [1-9]\d 兩位數(shù)
  100~199 1\d\d 百位為1的三位數(shù)
  200~249 2[0-4]\d 三位數(shù),百位是2,十位是0~9
  250~255 25[0-5] 三位數(shù),百位是2,十位是5,個(gè)位是0~5

  寫成正則表達(dá)式,即:(\d|([1-9]\d)|(1\d\d)|(2[0-4]\d)|(25[0-5])),但是這樣的正則表達(dá)式在匹配254這樣的字串時(shí),會(huì)分別匹配2、5、4,得到3個(gè)匹配,達(dá)不到預(yù)期效果,正確做法是將次序顛倒為((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d),因?yàn)樵?xxx|yyy)這種匹配行為中,是從左向右搜索的。

  完整的正則表達(dá)式是: 

復(fù)制代碼 代碼如下:


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

  按:

  象061這樣的高位為0的數(shù)是不能被匹配的。

因此,最上面(1. 部分)的寫法才是正確完整版的,(2. 部分)的寫法較為片面

感謝各位的閱讀,以上就是“匹配IP地址與域名的正則表達(dá)式是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)匹配IP地址與域名的正則表達(dá)式是什么這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

ip
AI