Winform/CSharp中实现对Http接口地址、IP地址字符串格式/合法性校验

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 Winform/CSharp中实现对Http接口地址、IP地址字符串格式/合法性校验,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

场景

Winform程序中,需要配置http接口地址以及mqtt协议的ip地址,需要对http接口地址以及ip地址字符串

的格式进行合法性校验。

Winform/CSharp中实现对Http接口地址、IP地址字符串格式/合法性校验

 

注:

博客:
霸道流氓气质的博客_CSDN博客-C#,架构之路,SpringBoot领域博主

实现

1、新建校验工具类FormatCheckHelper

using System;
using System.Text.RegularExpressions;

namespace DataConvert.com.bdtd.dataconvert
{
    public class FormatCheckHelper
    {
        public static bool IsHttpUrl(string str_url)

        {
            Uri uriResult;
            bool result =
                Uri.TryCreate(str_url, UriKind.Absolute, out uriResult)
                &&
                uriResult.Scheme == Uri.UriSchemeHttp;
            return result;
        }

        public static bool IsHttpsUrl(string str_url)

        {
            Uri uriResult;
            bool result =
                Uri.TryCreate(str_url, UriKind.Absolute, out uriResult)
                &&
                uriResult.Scheme == Uri.UriSchemeHttps;
            return result;
        }

        public static bool IsIPUrl(string str_ip)

        {
            //模式字符串,正则表达式
            string patten = @"^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$";
            //验证
            return Regex.IsMatch(str_ip, patten);
        }
    }
}

上面三个方法分别是对http地址格式校验、https地址格式校验、ip地址格式校验。

测试

​
            bool b = FormatCheckHelper.IsHttpUrl("12325");
            bool a = FormatCheckHelper.IsHttpUrl("http://119.156.123.158:9092");
            bool c = FormatCheckHelper.IsHttpsUrl("https://119.156.123.158:9092");
            bool d = FormatCheckHelper.IsHttpUrl("http://119.156.123.158");

            bool f = FormatCheckHelper.IsIPUrl("45454");
            bool g = FormatCheckHelper.IsIPUrl("fgghf");
            bool h = FormatCheckHelper.IsIPUrl("127.0.0.1");

            bool i = FormatCheckHelper.IsIPUrl("192.168.1.2");
            bool j = FormatCheckHelper.IsIPUrl("127.0.0");
            bool k = FormatCheckHelper.IsIPUrl("999.225.256.68");

​

注意对于Ip地址的校验,这里使用的正则表达式进行校验。

网上也有使用

using System.Net;
string ipStr="192.168.222.333";
IPAddress ip;
if(IPAddress.TryParse(ipStr,out ip))
{
  Console.WriterLine("合法IP");
}
else
{

   Console.WriterLine("合法IP");

  }

该种方式进行验证合法性的,但是会在输入数字时有偏差。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135812.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!