2
A
回答
10
如果只是從IP提取的數字,而不是驗證IP地址,那麼你可能只是這樣做:
[0-9]
不過,我認爲一個簡單的String.Split(".")
將是一個更容易的選擇。
4
/(\d+)\.(\d+)\.(\d+)\.(\d+)/
6
([0-9] +)。([0-9] +)。([0-9] +)。([0-9] +)
...應該這樣做。但它不驗證正則表達式,允許每個部分的數字超過255。
這裏的一個瘋狂的驗證之一:
\ B(25 [0-5] | 2 [0-4] [0-9] | [01] [0-9] - [O-? 9])(25 [0-5] | 2 [0-4] [0-9] | [01] [0-9] [0-9])(25 [0-5]?。| 2 [0-4] [0-9] | [01] [0-9] [0-9])(25 [0-5] |?2 [0-4] [0-9] | [ 01)?[0-9] [0-9]?)\ b
通過RegexBuddy製造商獲得最後一個正則表達式。
7
一些非常簡單卻又醜陋的東西可以工作..給你四個組,每個八位組一個。
(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})
2
呼籲正則表達式的
第一口... RegEx Library
1
雖然其他人指出各種良好的正則表達式;請問爲什麼你絕對必須使用正則表達式?這將是緩慢和容易出錯的。大多數平臺都具有集成的IP地址功能,或提供撥打inet_aton
的方法。
1
萬一有人需要一個驗證的正則表達式(所有可能的)IPv4地址:
([^\d.]|^)([01]{0,1}\d{1,2}|2[0-5][0-5])[.]([01]{0,1}\d{1,2}|2[0-5][0-5])[.]([01]{0,1}\d{1,2}|2[0-5][0-5])[.]([01]{0,1}\d{1,2}|2[0-5][0-5])([^\d]|$)
的IP被包含在第2,第3和第4個參數。第一個和最後一個沒有使用。這些都是必要的,否則一個錯誤的IP如:
999.1.2.3
將被捕獲爲「99.1.2.3」。我不確定是否要讓IP以點結束,例如
1.2.3.4.
如果沒有,更改最後一部分([^ \ d] | $)。儘管如此,我不會在它前面留下任何點。
我仍然認爲這RegEx是一個混亂的怪物:)和更好的解決方案將是使用函數手動驗證。
相關問題
- 1. IP地址正則表達式簡化
- 2. 正則表達式的IP地址
- 3. 正則表達式匹配IP地址
- 4. IP地址正則表達式python
- 5. 正則表達式IP(V4)地址
- 6. 增強IP地址正則表達式驗證 - 正則表達式重構
- 7. 正則表達式地址
- 8. 字符串的正則表達式IP地址
- 9. Javascript地址正則表達式地址
- 10. 使用正則表達式替換另一個IP地址的IP地址
- 11. 正則表達式匹配兩個IP地址之間的連字符符號
- 12. tcl正則表達式匹配ip地址在單行
- 13. 使用正則表達式在PowerShell中指定IP地址
- 14. 模式驗證是IP地址的正則表達式
- 15. 如何編寫IP地址格式的正則表達式
- 16. 正則表達式從netsh獲得MAC地址wlan
- 17. 正則表達式的IP地址列表
- 18. 獲得字符串的數組正則表達式正則表達式
- 19. 對於IP地址的Ruby正則表達式
- 20. 使用grep提取IP地址的正則表達式
- 21. 正則表達式攜帶看看後面的IP地址
- 22. 如何使用Subnetmask爲IP地址製作正則表達式?
- 23. 用於IP地址的正則表達式不匹配
- 24. IP地址的正則表達式允許端口
- 25. 正則表達式爲IP地址的負向預測
- 26. 正則表達式來代替IP地址
- 27. 匹配域和IP地址的正則表達式
- 28. 正則表達式IP地址從SNMP步行輸出
- 29. 使用正則表達式匹配ip地址
- 30. 正則表達式匹配IP地址+通配符
從上面你的正則表達式分析器應該返回參數1,2,3和4然後可以分開處理。 – Lazarus 2009-07-07 15:27:28
請注意,這不會驗證IP地址(它會接受111111111111.1.000000000000.1234567890),但您並未要求這樣做,所以它可能沒問題! – butterchicken 2009-07-07 15:27:49
每個括號部分 '()' 從正則表達式 – Lazarus 2009-07-07 15:28:05