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图片验证码代码
Mar 27 PHP
php cli 方式 在crotab中运行解决
Feb 08 PHP
PHP判断文件是否存在、是否可读、目录是否存在的代码
Oct 03 PHP
php站内搜索关键词变亮的实现方法
Dec 30 PHP
cakephp打印sql语句的方法
Feb 13 PHP
php实现图片转换成ASCII码的方法
Apr 03 PHP
php使用自定义函数实现汉字分割替换功能示例
Jan 30 PHP
PHP中的正则表达式实例详解
Apr 25 PHP
Laravel5框架自定义错误页面配置操作示例
Apr 17 PHP
php 的多进程操作实践案例分析
Feb 28 PHP
PHP论坛实现积分系统的思路代码详解
Jun 01 PHP
PHP7原生MySQL数据库操作实现代码
Jul 03 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
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
PHP4与PHP5的时间格式问题
2008/02/17 PHP
PHP生成随机字符串(3种方法)
2015/09/25 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
2020/04/04 PHP
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
JS对象与JSON格式数据相互转换
2012/02/20 Javascript
jquery form 隐藏的input 选择
2014/04/29 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
关于JSON与JSONP简单总结
2016/08/16 Javascript
jQuery多文件异步上传带进度条实例代码
2016/08/16 Javascript
javascript滚轮事件基础实例讲解(37)
2017/02/14 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
详解React之父子组件传递和其它一些要点
2018/06/25 Javascript
微信小程序仿RadioGroup改变样式的处理方案
2018/07/13 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
基于JS实现前端压缩上传图片的实例代码
2019/05/14 Javascript
详解小程序开发经验:多页面数据同步
2019/05/18 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
ES6 Generator基本使用方法示例
2020/06/06 Javascript
[00:59]DOTA2英雄背景故事——上古巨神
2020/06/28 DOTA
[49:58]完美世界DOTA2联赛PWL S3 Magma vs DLG 第一场 12.18
2020/12/19 DOTA
python操作CouchDB的方法
2014/10/08 Python
Python爬虫实例扒取2345天气预报
2018/03/04 Python
python多进程实现文件下载传输功能
2018/07/28 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
将pycharm配置为matlab或者spyder的用法说明
2020/06/08 Python
Django视图、传参和forms验证操作
2020/07/15 Python
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
财务人员的自我评价范文
2014/03/03 职场文书
工程造价专业大学生职业规划范文
2014/03/09 职场文书
安全隐患整改报告
2014/11/06 职场文书
三八红旗手事迹材料
2014/12/26 职场文书
2016年“6.26”禁毒宣传月系列活动总结
2016/04/05 职场文书
python 命令行传参方法总结
2021/05/25 Python