首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RegEx IP附加错误

RegEx IP附加错误
EN

Stack Overflow用户
提问于 2022-07-22 08:25:49
回答 2查看 40关注 0票数 -3

在我的react中,我有一个输入来验证字符串是否是IPV4地址。

这是我的RegEx:

代码语言:javascript
运行
复制
^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$

测试案例:

192.168.0.1

在我的应用程序中的

  1. :在一些随机正则表达式测试网站上的真

192.168.0.

在我的应用程序中的

  1. :在一些随机正则表达式测试网站上的假

192.168.0

在我的应用程序中的

  1. :在一些随机正则表达式测试网站上的真

192.168.

在我的应用程序中的

  1. :在一些随机正则表达式测试网站上的假

192.168

在我的应用程序中的

  1. :在一些随机正则表达式测试网站上的真

我不知道这里出了什么问题..。在一些随机的regex测试网站上,我的regex字符串似乎工作得很好,但是在我的应用程序中,它不.

你们中的一个知道任何与这个问题有关的事..。

谢谢你抽出时间大卫

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-07-22 09:09:40

我在代码中是这样使用的:

代码语言:javascript
运行
复制
const ipAddressValidationRegExString = '^(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\\.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\\.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])\\.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])$'

问题是\\

正确的正则表达式:

代码语言:javascript
运行
复制
const ipAddressValidationRegExString = '^(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])**\\\\**.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])**\\\\**.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])**\\\\**.(25[0-5]|2[0-4][0-9]|1?[0-9]?[0-9])$'
票数 -1
EN

Stack Overflow用户

发布于 2022-07-22 08:48:43

忘记正则表达式。那些永远都是写的--一次读--再也不会了。只需使用标准的解析工具就可以找到一个帮助函数:

代码语言:javascript
运行
复制
let isInRange = (x, min, max) => {
   return ((x >= min) && (x <= max));
}

let isValidAddress = (addr) => {

    try {
        let parts = addr.split('.');
        let values = [];

        if (parts.length != 4) {
           return false;
        }

        for (let i = 0; i < 4; i++) {
           values[i] = parseInt(parts[i]);
        }

        return (isInRange(values[0], 0, 255) && isInRange(values[1], 0, 255) &&
                isInRange(values[2], 0, 255) && isInRange(values[3], 0, 255));
    }
    catch (err) {
        // any exception throw above => return false
    }
    return false;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73077303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档