IPv4和IPv6的正则表达式
最近做到项目调整支持IPv6,总结一下:
IPv4的正则表达式
IPv4通常用点分十进制记法书写,例如10.100.51.148,其中的数字都是十进制,中间用实心圆点分隔。
/*验证IPv4*/private function validateIPv4($ip){return preg_match("/^((25[0-5]|2[0-4]\d|[01]?\d\d?)($|(?!\.$)\.)){4}$/", $ip);}
一 每段为0-255的数字,有时加入 |\* 允许输入 * 号代替数字。
- 25[0-5] 匹配 250-255
- 2[0-4]\d 匹配 200-249
- [01]?\d\d? 匹配 0-199 个位数/两位数/0或1开头的三位数
二 连接符和结尾
- $| 匹配最后一段直接结束
- (?!\.$) 负向预查,表示不能以 . 结尾
- \. 连接符
- {4} 必须是4段
IPv6的正则表达式
IPv6的128位地址通常写成8组,每组为四个十六进制数的形式。
比如:CDCD:910A:2222:5498:8475:1111:3900:2020。
如果几个连续段位的值都是0,那么这些0就可以简单的以::来表示,只能用一次。
前导的零可以省略。
/*验证IPv6*/private function validateIPv6($ip){return preg_match("/^(([\da-fA-F]{1,4}){0,1}($|(?!:$):)){2,8}$/", $ip);}
一 每段为四个十六进制数。
- ([\da-fA-F]{1,4}) 匹配 数字或字母,因为前导0可以省略,最少有一位
- {0,1} 零压缩法::中间的0000被省略,:: 里没有内容
二 连接符和结尾
- $| 匹配最后一段直接结束
- (?!: $): )) 负向预查,表示不能以 : 结尾
- : 连接符
- {2,8} 最少2段,最多8段
如有不足,欢迎指正。
IPv4和IPv6的正则表达式相关推荐
- ipv6正则表达式 java,用正则表达式解析IPv4跟IPv6地址字符串
用正则表达式解析IPv4和IPv6地址字符串 以下是经过我的.net C# 代码百般测试的,绝对经得住考验! IPv4[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9] ...
- IPV4及IPV6正则表达式详解
IPV4及IPV6正则表达式详解 一. 背景 二.实际应用情况 2.1 IPv4 2.1.1 IPv4说明 2.1.2 IPv4地址解析 2.1.3 IPv4正则表达式 2.2 IPv6 2.2.1 ...
- IPv4 和 IPv6 正则表达式
IPv4 和 IPv6 正则表达式 Pv4 地址例如,"192.168.0.2",为 . 分割的4段数字,数字范围为 0 - 255,而我们的正则表达式需要匹配的就是 0 - 25 ...
- ipv4、ipv6格式校验代码
ipv4.ipv6格式校验代码 一.题目 IPv4 地址格式: IPv4地址由4组十进制数组成,每组范围为 0 - 255,用"."分割. 注意:IPv4 地址内的数不能以 0 开 ...
- js IPV 4 IPV6 校验 正则表达式
百度了很多正则表达式,很多都不准确,或者不全面,下边是实验很多个正则之后,选用的一个非常准确的正则 IPV4 地址校验的正则表达式: /^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[ ...
- 记录一次nginx升级,支持ipv4和ipv6访问https
项目要求,需要让现有网站项目支持https,并同时支持ipv6访问,经过分析,现在nginx版本较老,所以决定升级nignx,并且同步配置https和ipv6. 升级准备 服务器网络环境需要支持ipv ...
- 漫话:全球 IPv4 地址正式耗尽?是时候说说到底什么是IPv4和IPv6了!
2019年11月25日,负责英国.欧洲.中东和部分中亚地区互联网资源分配的欧洲网络协调中心(RIPE NCC)宣布,其最后的 IPv4 地址空间储备池在 11 月 25 日 UTC + 1 15:35 ...
- IPv6相比IPv4在那些方面做出了改进?IPv4 to IPv6过渡的三种tunnel技术各自的特性...
改进 地址空间的扩容,地址容量为2^128(或(43亿)^4) 配置更加简单,支持非DHCP自动配置地址: 层次化网络结构,每个地区使用相同前缀的地址范围,更加容易管理: 报头格式简单灵活,去除了IP ...
- 【计算机网络】网络层 : 总结 ( 功能 | 数据交换 | IP 数据报 | IPv4 地址 | IPv6 地址 | 路由选择协议 | 路由算法 )★★★
文章目录 一.网络层功能 二.数据交换方式 ★ 三.IP 数据报 ★ 四. IPv4 地址 ★★ 1 . IP 地址 发展 : 2 . 分类 IP 地址 3 . NAT 转换 4 . 子网划分 5 . ...
最新文章
- 有关EUV光刻机,你需要知道这些
- 在 StringGrid 上画线时, 使用 GDI+ 以消除锯齿 - 回复 gsjn_8888_6666 的问题
- asp.net 获取 当前日期时间 及 前后N天日期时间(DropDownList数据绑定)
- 不小心删表删库了,还能救
- 数学模型让咖啡更好喝
- bootstap-水果节案例-编辑中
- 微软认证学习资料大集合(软件+资料)
- OO生存指.....抱歉无法生存
- (Windows)获取系统显示的缩放比例方法
- vscode Java语法检查_vscode eslint js代码检查工具
- 台式计算机无线接入,台式计算机有线连接路由器WiFi方法图步骤,可以详细设置无线内容(...
- 登录案例的演示 涉及request的转发
- Linux系统(三)系统基础扫盲大全
- 【C/C++】教你区分libc、glibc、libgcc、libstdc++等名词
- 栖与谁邻解析:百度网盟操作要筛选哪种无效投放网站, 哪些网站要屏蔽
- SPSS数据分析流程经验总结
- 浏览器首页被劫持(解决)-桔梗网
- 【陈工笔记】# 微信小程序,初始平台搭建 #
- 人民币主动贬值:你的理财方式主动调整了吗?
- Abaqus液体中气液两相的气泡仿真