Exemple #1
0
 protected void ReadRecords()
 {
     if (string.IsNullOrEmpty(SourceFile) || !File.Exists(SourceFile))
     {
         LogTo.Fatal("Did not find list file {0}", SourceFile);
         throw new Exception("Did not find list file " + SourceFile);
     }
     foreach (var lines in RegularList.Select(GetRegExpMatches))
     {
         PopulateRecords(lines);
     }
 }
Exemple #2
0
        /// <summary>
        /// 判断当前str是否符合规则,判断用户输入是否准确
        /// </summary>
        /// <param name="str">string,判断的字符串</param>
        /// <param name="regualrList">RegularList,已知规则</param>
        /// <returns>bool,判断结果</returns>
        public static bool isFix(string str, RegularList regualrList)
        {
            Regex rg = new Regex(@"^-?\d+$");

            switch (regualrList)
            {
            case RegularList.十六进制字符:
                rg = new Regex(@"^[A-Fa-f0-9]+$");
                break;

            case RegularList.整数:
                rg = new Regex(@"^-?\d+$");
                break;

            case RegularList.正整数:
                rg = new Regex(@"^[0-9]*[1-9][0-9]*$");
                break;

            case RegularList.负整数:
                rg = new Regex(@"^-[0-9]*[1-9][0-9]*$");
                break;

            case RegularList.非正整数:
                rg = new Regex(@"^((-\d+)|(0+))$");
                break;

            case RegularList.非负整数:
                rg = new Regex(@"^\d+$");
                break;

            case RegularList.输入中的浮点数:
                rg = new Regex(@"^(-?\d+)((\.\d+)|(\.))?$");
                break;

            case RegularList.浮点数:
                rg = new Regex(@"^(-?\d+)(\.\d+)?$");
                break;

            case RegularList.正浮点数:
                rg = new Regex(@"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$");
                break;

            case RegularList.负浮点数:
                rg = new Regex(@"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$");
                break;

            case RegularList.非正浮点数:
                rg = new Regex(@"^((-\d+(\.\d+)?)|(0+(\.0+)?))$");
                break;

            case RegularList.非负浮点数:
                rg = new Regex(@"^\d+(\.\d+)?$");
                break;

            case RegularList.英文字母:
                rg = new Regex(@"^[A-Za-z]+$");
                break;

            case RegularList.大写英文字母:
                rg = new Regex(@"^[A-Z]+$");
                break;

            case RegularList.小写英文字母:
                rg = new Regex(@"^[a-z]+$");
                break;

            case RegularList.数字和英文字母:
                rg = new Regex(@"^[A-Za-z0-9]+$");
                break;

            case RegularList.IP地址:
                rg = new Regex(@"^((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))$");
                break;

            case RegularList.邮箱:
                rg = new Regex(@"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$");
                break;
            }
            return(rg.IsMatch(str));
        }