JS: IPv4的正则表达式

简介

IPv4地址是一种数字字符串,其中的每一个字符都可以用正则表达式检测出来。正则表达式可以用来提取特定字符,验证IPv4地址的有效性,还可以用来确定IP地址的合法性。

IPv4址是一个由4个数字组成的字符串,每一个数字都可以在IPv4地址中被表示为0~255的整数。比如 25.2.45.123 就是一个有效的IPv4地址,而 25.2.45.256 则是一个无效的IPv4地址。

如果想要检测出一个有效的 IPv4 地址,就要使用正则表达式正则表达式的形式化定义如下:“用来检测字符串是否符合给定的模式的字符串处理技术”。正则表达式可以用于检测字符串中是否包含任何特定字符,以及提取这些特定字符,也可以用来确定 IPv4地址的合法性。

一个线上测试正则表达式的网址:RegExr
里面会有编写的正则内容的自动检测介绍。

具体实现

/^(?!0)(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(?:[0-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/

在这个正则表达式中,我们使用了一个更加严格的模式来匹配 IPv4 地址。该正则表达式使用了非捕获分组和正则表达式 OR 运算符 (),以允许我们匹配 0 到 255 之间的数字
(?!0)表示 IP 地址第一位不能为 0。
(?:[0-9]I[1-9]\dI1\df2312[0-4]\d125[0-5])表示一个IP 地址段。其中:
[0-9]匹配一个单个数字。
[1-9]\d匹配 10 到 99 之间的数字
1\d{2}匹配 100 到 199 之间的数字
2[0-4]\d匹配 200 到 249 之间的数字
25[0-5]匹配 250 到 255 之间的数字。
\.表示匹配一个点号,用来分隔每个 IP 地址段。

最后

觉得有用的朋友请用你的金手指点一下赞,或者评论留言一起探讨技术!

你可能感兴趣的:(正则表达式,正则表达式)