C#验证类 可验证:邮箱,电话,手机,数字,英文,日期,身份证,邮编,网址,IP
namespace YongFa365.Validator { using System; using System.Text.RegularExpressions; /// <summary> /// RegExp Soruce: http://regexlib.com/DisplayPatterns.aspx /// Author:柳永法 yongfa365 http://www.yongfa365.com/ yongfa365@qq.com /// Intro:验证 网址,IP,邮箱,电话,手机,数字,英文,日期,身份证,邮编, /// 原则上是中国通用,因为各种场合不一样所以有特殊情况肯定要自己再手写,这里只能是提供一些通用的验证,追求太完美是不现实的。 /// Version: 1.0 /// PutTime: 2008-6-5 /// LastModi:2008-6-5 /// </summary> /// public class Validator { #region 验证邮箱 /// <summary> /// 验证邮箱 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsEmail(string source) { return Regex.IsMatch(source, @"^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$", RegexOptions.IgnoreCase); } public static bool HasEmail(string source) { return Regex.IsMatch(source, @"[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})", RegexOptions.IgnoreCase); } #endregion 验证网址 #region 验证日期 /// <summary> /// 验证日期 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsDateTime(string source) { try { DateTime time = Convert.ToDateTime(source); return true; } catch { return false; } } #endregion 验证手机号 验证IP 验证身份证是否有效 是不是Int型的 看字符串的长度是不是在限定数之间 一个中文为两个字符 是不是中国电话,格式010-85849685 #region 邮政编码 6个数字 /// <summary> /// 邮政编码 6个数字 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsPostCode(string source) { return Regex.IsMatch(source, @"^\d{6}$", RegexOptions.IgnoreCase); } #endregion #region 中文 /// <summary> /// 中文 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsChinese(string source) { return Regex.IsMatch(source, @"^[\u4e00-\u9fa5]+$", RegexOptions.IgnoreCase); } public static bool hasChinese(string source) { return Regex.IsMatch(source, @"[\u4e00-\u9fa5]+", RegexOptions.IgnoreCase); } #endregion #region 验证是不是正常字符 字母,数字,下划线的组合 /// <summary> /// 验证是不是正常字符 字母,数字,下划线的组合 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsNormalChar(string source) { return Regex.IsMatch(source, @"[\w\d_]+", RegexOptions.IgnoreCase); } #endregion } }