using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace Ant.Common
{
///
/// 用来判断字符串是否符合规则
///
public static class ContentJudge
{
///
/// 用来判断字符串是否是正整数
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsPositiveInt(string content)
{
return Regex.IsMatch(content, @"^\d+$");
}
///
/// 用来判断字符串是否是正浮点数
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsPositiveDecimal(string content)
{
return Regex.IsMatch(content, @"^\d+[\.]{1}\d+$");
}
///
/// 判断是否为负整数
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsMinusInt(string content)
{
return Regex.IsMatch(content, @"^-\d+$");
}
///
/// 用来判断字符串是否是负浮点数
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsMinusDecimal(string content)
{
return Regex.IsMatch(content, @"^-\d+[\.]{1}\d+$");
}
///
/// 判断是否为汉字
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsChinese(string content)
{
return Regex.IsMatch(content, @"^[\u4e00-\u9fa5]+$");
}
///
/// 判断是否为大写字母
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsCapital(string content)
{
return Regex.IsMatch(content, @"^[A-Z]+$");
}
///
/// 判断是否为小写字母
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsSmallLetter(string content)
{
return Regex.IsMatch(content, @"^[a-z]+$");
}
///
/// 判断是否为字母
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsLetter(string content)
{
return Regex.IsMatch(content, @"^[A-ZA-Z]+$");
}
///
/// 判断是否为字母和数字混合
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsLetterAndNumber(string content)
{
return Regex.IsMatch(content, @"^[A-Za-z0-9]+$");
}
///
/// 判断是否为字母和中文混合
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsLetterAndChinese(string content)
{
return Regex.IsMatch(content, @"^[A-Za-z\u4e00-\u9fa5]+$");
}
///
/// 判断是否为数字和中文混合
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsNumberAndChinese(string content)
{
return Regex.IsMatch(content, @"^[0-9\u4e00-\u9fa5]+$");
}
///
/// 判断是否为E-Mail地址
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsMailAddress(string content)
{
return Regex.IsMatch(content, @"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$");
}
///
/// 判断是否为手机号码
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsMobilePhoneNumber(string content)
{
return Regex.IsMatch(content, @"^1[3,5,8][0-9])\d{8}$");
}
///
/// 判断是否为电话号码
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsPhoneNumber(string content)
{
return Regex.IsMatch(content, @"^(\d{3,4}-)?\d{6,8}$");
}
///
/// 判断是否为IP
///
/// 欲判断的字符串
/// 返回判断结果bool,合法为true
public static bool JudgeIsIp(string content)
{
return Regex.IsMatch(content, @"^(\d{1,2}|1\d\d|2[0-4]d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$");
}
///
/// 自定义判断
///
/// 欲判断的字符串
/// 正则表达式规则
/// 返回判断结果bool,合法为true
public static bool JudgeDiy(string content, string regex)
{
return Regex.IsMatch(content, regex);
}
}
public enum ContentJudgeEnum
{
JudgeIsPositiveInt = 1,
JudgeIsPositiveDecimal = 2,
JudgeIsMinusInt = 3,
JudgeIsMinusDecimal = 4,
JudgeIsChinese = 5,
JudgeIsCapital = 6,
JudgeIsSmallLetter = 7,
JudgeIsLetter = 8,
JudgeIsLetterAndNumber = 9,
JudgeIsLetterAndChinese = 10,
JudgeIsNumberAndChinese = 11,
JudgeIsMailAddress = 12,
JudgeIsMobilePhoneNumber = 13,
JudgeIsPhoneNumber = 14,
JudgeIsIp = 15,
JudgeDiy = 16,
None = 1000
}
}