正則表示式驗證Ip地址(絕對正確)
阿新 • • 發佈:2018-12-25
之前一直不太會寫正則表示式,很多要用到正則表示式的都直接百度,像上次要用正則表示式驗證是否是合法的ip地址,然後就上網找,結果就是沒找到一個對的,今天就為大家貢獻一下,寫個對的,並做一下解析。(建議大家還是去看書去規範的學一下,不要直接百度,不然都是坑)。
iPv4的ip地址都是(1~255).(0~255).(0~255).(0~255)的格式
下面給出相對應的正則表示式:
"^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."
+"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
+"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
+"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$"
上面的一個不漏就是正確的驗證ip的正則表示式,簡單的講解一下
\\d表示0~9的任何一個數字
{2}表示正好出現兩次
[0-4]表示0~4的任何一個數字
| 的意思是或者
( )上面的括號不能少,是為了提取匹配的字串,表示式中有幾個()就表示有幾個相應的匹配字串
1\\d{2}的意思就是100~199之間的任意一個數字
2[0-4]\\d的意思是200~249之間的任意一個數字
25[0-5]的意思是250~255之間的任意一個數字
[1-9]\\d的意思是10~99之間的任意一個數字
[1-9])的意思是1~9之間的任意一個數字
\\.的意思是.點要轉義(特殊字元類似,@都要加\\轉義)
說到這裡應該已經很清楚的知道了上面的正則表示式的意思。