C#正则表达式验证IP地址

思路:正则表达式实质就是字符串)(([1-9]\d?)|(1\d{2})|(2[01]\d)|(22[0-3])) 第一部分是1-223可能有:
一个字符[1-9],可能两个字符[1-9]\d ?重复是一个次或者0次.
三个字符就是以1开头或者2开头的字符
1\d{2}是以1开头
2[01]\d)|(22[0-3] 是2开头的三个字符并到223结束

之后的三部分同理。

控制台中的代码:

            while (true)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("请输入您的IP地址:");
                Console.ForegroundColor = ConsoleColor.Cyan;
                string str = Console.ReadLine();
                // \d(0-9)数字  ?重复0次或一个  {n} 匹配前面的字符n次               
                //由四部分组成,每部分之间使用.连接
                //第一部分:1-223
                //其余三部分
                string pattern = @"^(([1-9]\d?)|(1\d{2})|(2[01]\d)|(22[0-3]))(\.((1?\d\d?)|(2[04]/d)|(25[0-5]))){3}$";
                if (Regex.IsMatch(str,pattern))
                {
                    Console.ForegroundColor = ConsoleColor.Blue;
                    Console.WriteLine("输入的IP地址正确"); 
                }
                else
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("输入的IP地址有误");
                }
            }

运行之后的结果:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值