日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

javascript判断IPV6格式

發布時間:2023/12/31 javascript 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javascript判断IPV6格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

隨著ipv6的普及,在web上添加ip6地址的要求逐漸增多,下面這個函數是我按照ipv6的定義寫的判斷,可以用來判斷正常的,縮寫的ipv6格式,同時可以判斷ipv6和ipv4混合的格式:

?

  • //統計?10F:?或者:10B的個數 ?
  • ?
  • function?cLength(str){? ?
  • ?
  • ??var?reg?=?/([0-9a-f]{1,4}:)|(:[0-9a-f]{1,4})/gi;? ?
  • ?
  • ??var?temp?=?str.replace(reg,'?');? ?
  • ?
  • ??return?temp.length;? ?
  • ?
  • ?}? ?
  • ?
  • /* ?
  • ?
  • ?*?判斷ipv6格式 ?
  • ?
  • ?*?@author?yifangyou ?
  • ?
  • ?*?@version?gslb?2011-03-10 ?
  • ?
  • ?*?*/????? ?
  • ?
  • function?isIPv6(tmpstr) ?
  • ?
  • { ?
  • ?
  • ????????//CDCD:910A:2222:5498:8475:1111:3900:2020? ?
  • ?
  • ????????var?patrn=/^([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$/i;? ?
  • ?
  • ????????var?r=patrn.exec(tmpstr) ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????if(tmpstr=="::"){ ?
  • ?
  • ????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????//F:F:F::1:1?F:F:F:F:F::1?F::F:F:F:F:1格式 ?
  • ?
  • ????????patrn=/^(([0-9a-f]{1,4}:){0,6})((:[0-9a-f]{1,4}){0,6})$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{???? ?
  • ?
  • ????????????var?c=cLength(tmpstr); ?
  • ?
  • ????????????if(c<=7?&&?c>0) ?
  • ?
  • ????????????{ ?
  • ?
  • ????????????????return?true; ?
  • ?
  • ????????????} ?
  • ?
  • ????????}???????????????? ?
  • ?
  • ????????//F:F:10F:: ?
  • ?
  • ????????patrn=/^([0-9a-f]{1,4}:){1,7}:$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????//::F:F:10F ?
  • ?
  • ????????patrn=/^:(:[0-9a-f]{1,4}){1,7}$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????//F:0:0:0:0:0:10.0.0.1格式 ?
  • ?
  • ????????patrn=/^([0-9a-f]{1,4}:){6}(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????if(r[2]<=255?&&?r[3]<=255?&&r[4]<=255?&&?r[5]<=255?) ?
  • ?
  • ????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????//F::10.0.0.1格式 ?
  • ?
  • ????????patrn=/^([0-9a-f]{1,4}:){1,5}:(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????if(r[2]<=255?&&?r[3]<=255?&&r[4]<=255?&&?r[5]<=255?) ?
  • ?
  • ????????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????//::10.0.0.1格式 ?
  • ?
  • ????????patrn=/^::(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/i;? ?
  • ?
  • ????????r=patrn.exec(tmpstr); ?
  • ?
  • ????????if(r) ?
  • ?
  • ????????{ ?
  • ?
  • ????????????if(r[1]<=255?&&?r[2]<=255?&&r[3]<=255?&&?r[4]<=255) ?
  • ?
  • ????????????????return?true; ?
  • ?
  • ????????} ?
  • ?
  • ????????return?false; ?
  • ?
  • } ?
  • ?



    ? ? ?本文轉自yifangyou 51CTO博客,原文鏈接:http://blog.51cto.com/yifangyou/615893,如需轉載請自行聯系原作者

    總結

    以上是生活随笔為你收集整理的javascript判断IPV6格式的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。