PHP IPV6正则表达式验证代码


Posted in PHP onFebruary 16, 2010

<?php 
// literally from the ABNF in rfc3986 (thanks to 'WCP') 
function validateIPv6($IP) 
{ 
return preg_match('/\A 
(?: 
(?: 
(?:[a-f0-9]{1,4}:){6} ::(?:[a-f0-9]{1,4}:){5} 
(?:[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){4} 
(?:(?:[a-f0-9]{1,4}:){0,1}[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){3} 
(?:(?:[a-f0-9]{1,4}:){0,2}[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){2} 
(?:(?:[a-f0-9]{1,4}:){0,3}[a-f0-9]{1,4})?::[a-f0-9]{1,4}: 
(?:(?:[a-f0-9]{1,4}:){0,4}[a-f0-9]{1,4})?:: 
) 
(?: 
[a-f0-9]{1,4}:[a-f0-9]{1,4} 
(?:(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3} 
(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]) 
) 
(?: 
(?:(?:[a-f0-9]{1,4}:){0,5}[a-f0-9]{1,4})?::[a-f0-9]{1,4} 
(?:(?:[a-f0-9]{1,4}:){0,6}[a-f0-9]{1,4})?:: 
) 
)\Z/ix', 
$IP 
); 
} 
?>

PHP 相关文章推荐
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
Apr 08 PHP
PHP跳转页面的几种实现方法详解
Jun 08 PHP
单点登录 Ucenter示例分析
Oct 29 PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
Oct 26 PHP
php使用curl并发减少后端访问时间的方法分析
May 12 PHP
php获得刚插入数据的id 的几种方法总结
May 31 PHP
PHP addAttribute()函数讲解
Feb 03 PHP
详解如何实现Laravel的服务容器的方法示例
Apr 15 PHP
php实现的表单验证类完整示例
Aug 13 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
Apr 14 PHP
PHP常量及变量区别原理详解
Aug 14 PHP
php foreach 使用&amp;(与运算符)引用赋值要注意的问题
Feb 16 #PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
Feb 16 #PHP
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
Feb 16 #PHP
一步一步学习PHP(6) 面向对象
Feb 16 #PHP
一步一步学习PHP(5) 类和对象
Feb 16 #PHP
php 生成静态页面的办法与实现代码详细版
Feb 15 #PHP
IP138 IP地址查询小偷实现代码
Feb 15 #PHP
You might like
php抓取https的内容的代码
2010/04/06 PHP
CodeIgniter图像处理类的深入解析
2013/06/17 PHP
深入apache配置文件httpd.conf的部分参数说明
2013/06/28 PHP
CodeIgniter使用phpcms模板引擎
2013/11/12 PHP
php导出word文档与excel电子表格的简单示例代码
2014/03/08 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
JS 学习笔记 防止发生命名冲突
2009/07/30 Javascript
网站导致浏览器崩溃的原因总结(多款浏览器) 推荐
2010/04/15 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
2014/06/06 Javascript
jQuery中的编程范式详解
2014/12/15 Javascript
Javascript核心读书有感之词法结构
2015/02/01 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
JS模拟并美化的表单控件完整实例
2015/08/19 Javascript
jQuery UI库中dialog对话框功能使用全解析
2016/04/23 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
npm配置国内镜像资源+淘宝镜像的方法
2018/09/07 Javascript
JS返回页面时自动回滚到历史浏览位置
2018/09/26 Javascript
vue实现行列转换的一种方法
2019/08/06 Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
2020/09/04 Javascript
Python实现图片拼接的代码
2018/07/02 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
通过python改变图片特定区域的颜色详解
2019/07/15 Python
pytorch中获取模型input/output shape实例
2019/12/30 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
python音频处理的示例详解
2020/12/23 Python
python 实现逻辑回归
2020/12/30 Python
Html5调用手机摄像头并实现人脸识别的实现
2018/12/21 HTML / CSS
信息专业本科生个人的自我评价
2013/10/28 职场文书
应届生人事助理求职信
2013/11/09 职场文书
2014年商场超市庆元旦活动方案
2014/02/14 职场文书
2014年党员自我评价材料
2014/09/22 职场文书
2014年优秀班主任工作总结
2014/12/16 职场文书
2015年行政部工作总结
2015/04/28 职场文书
2015年小班保育员工作总结
2015/05/27 职场文书
教师学习十八届五中全会精神心得体会
2016/01/05 职场文书