zoukankan      html  css  js  c++  java
  • Code-Validator:验证网址(可以匹配IPv4地址但没对IPv4地址进行格式验证;IPv6暂时没做匹配)

    ylbtech-Code-Validator:验证网址(可以匹配IPv4地址但没对IPv4地址进行格式验证;IPv6暂时没做匹配)
    1.返回顶部
    1、
    using System;
    using System.Text.RegularExpressions;
    
    namespace Sp.Common
    {
        public class ValidatorHelper
        {
            /// <summary>  
            /// 验证网址(可以匹配IPv4地址但没对IPv4地址进行格式验证;IPv6暂时没做匹配)  
            /// [允许省略"://";可以添加端口号;允许层级;允许传参;域名中至少一个点号且此点号前要有内容]  
            /// </summary>  
            /// <param name="input">待验证的字符串</param>  
            /// <returns>是否匹配</returns>  
            public static bool IsURL(string input)
            {
                ////每级域名由字母、数字和减号构成(第一个字母不能是减号),不区分大小写,单个域长度不超过63,完整的域名全长不超过256个字符。在DNS系统中,全名是以一个点“.”来结束的,例如“www.nit.edu.cn.”。没有最后的那个点则表示一个相对地址。   
                ////没有例如"http://"的前缀,没有传参的匹配  
                //string pattern = @"^([0-9a-zA-Z][0-9a-zA-Z-]{0,62}.)+([0-9a-zA-Z][0-9a-zA-Z-]{0,62}).?$";  
    
                //string pattern = @"^(((file|gopher|news|nntp|telnet|http|ftp|https|ftps|sftp)://)|(www.))+(([a-zA-Z0-9._-]+.[a-zA-Z]{2,6})|([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}))(/[a-zA-Z0-9&%_./-~-]*)?$";  
                string pattern = @"^([a-zA-Z]+://)?([w-.]+)(.[a-zA-Z0-9]+)(:d{0,5})?/?([w-/]*).?([a-zA-Z]*)??(([w-]*=[w%]*&?)*)$";
                return IsMatch(input, pattern);
            }
    
            #region 匹配方法  
            /// <summary>  
            /// 验证字符串是否匹配正则表达式描述的规则  
            /// </summary>  
            /// <param name="inputStr">待验证的字符串</param>  
            /// <param name="patternStr">正则表达式字符串</param>  
            /// <returns>是否匹配</returns>  
            public static bool IsMatch(string inputStr, string patternStr)
            {
                return IsMatch(inputStr, patternStr, false, false);
            }
    
            /// <summary>  
            /// 验证字符串是否匹配正则表达式描述的规则  
            /// </summary>  
            /// <param name="inputStr">待验证的字符串</param>  
            /// <param name="patternStr">正则表达式字符串</param>  
            /// <param name="ifIgnoreCase">匹配时是否不区分大小写</param>  
            /// <returns>是否匹配</returns>  
            public static bool IsMatch(string inputStr, string patternStr, bool ifIgnoreCase)
            {
                return IsMatch(inputStr, patternStr, ifIgnoreCase, false);
            }
    
            /// <summary>  
            /// 验证字符串是否匹配正则表达式描述的规则  
            /// </summary>  
            /// <param name="inputStr">待验证的字符串</param>  
            /// <param name="patternStr">正则表达式字符串</param>  
            /// <param name="ifValidateWhiteSpace">是否验证空白字符串</param>  
            /// <returns>是否匹配</returns>  
            public static bool IsMatch1(string inputStr, string patternStr, bool ifValidateWhiteSpace)
            {
                return IsMatch(inputStr, patternStr, false, ifValidateWhiteSpace);
            }
    
            /// <summary>  
            /// 验证字符串是否匹配正则表达式描述的规则  
            /// </summary>  
            /// <param name="inputStr">待验证的字符串</param>  
            /// <param name="patternStr">正则表达式字符串</param>  
            /// <param name="ifIgnoreCase">匹配时是否不区分大小写</param>  
            /// <param name="ifValidateWhiteSpace">是否验证空白字符串</param>  
            /// <returns>是否匹配</returns>  
            public static bool IsMatch(string inputStr, string patternStr, bool ifIgnoreCase, bool ifValidateWhiteSpace)
            {
                if (!ifValidateWhiteSpace && string.IsNullOrEmpty(inputStr))
                    return false;//如果不要求验证空白字符串而此时传入的待验证字符串为空白字符串,则不匹配  
                Regex regex = null;
                if (ifIgnoreCase)
                    regex = new Regex(patternStr, RegexOptions.IgnoreCase);//指定不区分大小写的匹配  
                else
                    regex = new Regex(patternStr);
                return regex.IsMatch(inputStr);
            }
            #endregion
        }
    }
    2、
    2.返回顶部
     
    3.返回顶部
     
    4.返回顶部
     
    5.返回顶部
     
     
    6.返回顶部
     
    warn 作者:ylbtech
    出处:http://ylbtech.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    EntityFramework 启用迁移 EnableMigrations 报异常 "No context type was found in the assembly"
    JAVA 访问FTP服务器示例(2)
    NuGet Package Manager 更新错误解决办法
    JAVA 访问FTP服务器示例(1)
    RemoteAttribute 的使用问题
    诡异的 javascript 变量
    javascript apply用法
    Babun 中文乱码
    GSM呼叫过程
    转站博客园
  • 原文地址:https://www.cnblogs.com/storebook/p/12685724.html
Copyright © 2011-2022 走看看