예제 #1
0
        /// <summary>
        /// 判断输入的字符串是否是合法的IPV6 地址
        public static bool IsIPV6(string input)
        {
            if (input == null)
            {
                return(false);
            }
            string pattern = "";
            string temp    = input;

            string[] strs = temp.Split(':');
            if (strs.Length > 8)
            {
                return(false);
            }
            int count = YCRegex.GetStringCount(input, "::");

            if (count > 1)
            {
                return(false);
            }
            else if (count == 0)
            {
                pattern = @"^([\da-f]{1,4}:){7}[\da-f]{1,4}$";

                Regex regex = new Regex(pattern);
                return(regex.IsMatch(input));
            }
            else
            {
                pattern = @"^([\da-f]{1,4}:){0,5}::([\da-f]{1,4}:){0,5}[\da-f]{1,4}$";
                Regex regex1 = new Regex(pattern);
                return(regex1.IsMatch(input));
            }
        }
예제 #2
0
 public static YCRegex GetInstance()
 {
     if (YCRegex.instance == null)
     {
         YCRegex.instance = new YCRegex();
     }
     return(YCRegex.instance);
 }