2014-05-15 64 views
1

我已經給出了一個查找一系列IP地址的正則表達式。我可以坐下來手動確定它搜索的IP範圍,但我想知道是否有一種工具可以爲我做到這一點。我找到了很多工具來做相反的事情(把ip範圍並將其轉換爲正則表達式)。 (0-9)| [1-9] [0-9] | 1([0-9] [0-9])| 2([0- 4] [0-9] | 5 [0-5]))([0-9] |。[1-9] [0-9] | 1([0-9] [0-9])| 2 ([0-4] [0-9] | 5 [0-5]))$如何快速確定正則表達式評估的ip範圍爲

這適用於什麼範圍,以及最快/最簡單的方式來得到它?

謝謝!

回答

2

在一般情況下,無法生成與任意正則表達式匹配的所有字符串。我懷疑有人爲你的情況寫了一個專門的工具。

無論如何,你的例子很簡單和慣用;它尋找兩個帶點的八位字節值,它們是一位數字或兩位數字,或者三位數字以1開頭,或者三位數字以2開頭,後面跟着一個小於五的數字,或者25後面跟一個小於六的數字;換句話說,0-255。所以範圍是192.22.0.0-192.22.255.255(192.22.0.0/16)。

+0

謝謝,我認爲這是相當容易弄清楚。我有客戶可能不同意,我希望能爲他們提供一個解決方案。 再次感謝 – mpls423

0

網絡工具Regexplained可能會幫助您更好地理解正則表達式!

正如tripleee提到,正則表達式捕獲IP範圍192.22.0.0到192.22.255.255

但是,因爲時間段沒有被逃脫,也錯誤地捕捉像一個字符串(。):

192.22.255 

正則表達式應該用反斜槓加以糾正:

^192\.22\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))\.([0-9]|[1-9][0-9]|1([0-9][0-9])|2([0-4][0-9]|5[0-5]))$ 
+0

感謝您的評論。是的,我理解正則表達式,我可以弄清楚。然而,我的隊友/客戶可能並不想提供簡單的解決方案。 – mpls423

+0

@ mpls423你試過了我放的Regexplained鏈接嗎?直到我將它插入網絡工具之前,我一直無法計算出您的正則表達式。 –

+0

是的,我做了,謝謝你的鏈接。然而,我的問題再次不是我需要幫助理解它,而是我需要一個解決方案,我的客戶將理解。雖然網站對你或我有幫助,但這對我的客戶來說會很有威脅。不過謝謝。 – mpls423