js中的IP格式正則匹配校驗詳解~


IPV4的格式為x:y:z:w,其中{x,y,z,w}屬於{0~255}的正整數;

下面是其校驗的正則表達式:

  1. function isIP(ip)   
  2. {   
  3.     var re =  /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/   
  4.     return re.test(ip);   
  5. }  

其中 /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/   定義了一個正則表達式:

^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.--------^~代表開頭,表示要么是兩位數、要么是以1開頭的三位數,要么以2開頭的但是不能超過255的三位數
(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.---------限定了介於0~255之前的整數
(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.---------限定了介於0~255之前的整數
(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$---------$~代表以介於0~255之前的整數結尾。

\d 匹配一個字數字符,/\d/ = /[0-9]/;

{n,m} 匹配n-m次;

[xyz] 字符集(character set),匹配這個集合中的任一一個字符(或元字符);

\ 做為轉意,即通常在"\"后面的字符不按原來意義解釋,如/b/匹配字符"b",當b前面加了反斜桿后/\b/,轉意為匹配一個單詞的邊界。

第二種正則表達式:

  1. function isIP(ip)  
  2. {  
  3.     var reg = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;  
  4.     if (reg.test(ip))  
  5.     {  
  6.         ip.match(reg);  
  7.         if (RegExp.$1<=255&&RegExp.$1>=0  
  8.           &&RegExp.$2<=255&&RegExp.$2>=0  
  9.           &&RegExp.$3<=255&&RegExp.$3>=0  
  10.           &&RegExp.$4<=255&&RegExp.$4>=0)  
  11.         {  
  12.             return true;   
  13.         }else  
  14.         {  
  15.             return false;  
  16.         }  
  17.     }else  
  18.     {  
  19.         return false;  
  20.     }  
  21. }  

學習博客http://blog.csdn.net/pg_guo/article/details/8532147有感而發~~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM