1namespace YongFa365.Validator
2{
3 using System;
4 using System.Text.RegularExpressions;
5
6 /// <summary>
7 /// RegExp Soruce: http://regexlib.com/DisplayPatterns.aspx
8 /// Author:柳永法 yongfa365 http://www.yongfa365.com/ yongfa365@qq.com
9 /// Intro:验证 网址,IP,邮箱,电话,手机,数字,英文,日期,身份证,邮编,
10 /// 原则上是中国通用,因为各种场合不一样所以有特殊情况肯定要自己再手写,这里只能是提供一些通用的验证,追求太完美是不现实的。
11 /// Version: 1.0
12 /// PutTime: 2008-6-5
13 /// LastModi:2008-6-5
14 /// </summary>
15 ///
16 public class Validator
17 {
18
19 #region 验证邮箱
20 /// <summary>
21 /// 验证邮箱
22 /// </summary>
23 /// <param name="source"></param>
24 /// <returns></returns>
25 public static bool IsEmail(string source)
26 {
27 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);
28 }
29 public static bool HasEmail(string source)
30 {
31 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);
32 }
33 #endregion
34
35 验证网址
50
51 #region 验证日期
52 /// <summary>
53 /// 验证日期
54 /// </summary>
55 /// <param name="source"></param>
56 /// <returns></returns>
57 public static bool IsDateTime(string source)
58 {
59 try
60 {
61 DateTime time = Convert.ToDateTime(source);
62 return true;
63 }
64 catch
65 {
66 return false;
67 }
68 }
69 #endregion
70
71 验证手机号
86
87 验证IP
102
103 验证身份证是否有效
183
184 是不是Int型的
204
205 看字符串的长度是不是在限定数之间 一个中文为两个字符
223
224 是不是中国电话,格式010-85849685
235
236 #region 邮政编码 6个数字
237 /// <summary>
238 /// 邮政编码 6个数字
239 /// </summary>
240 /// <param name="source"></param>
241 /// <returns></returns>
242 public static bool IsPostCode(string source)
243 {
244 return Regex.IsMatch(source, @"^\d{6}$", RegexOptions.IgnoreCase);
245 }
246 #endregion
247
248 #region 中文
249 /// <summary>
250 /// 中文
251 /// </summary>
252 /// <param name="source"></param>
253 /// <returns></returns>
254 public static bool IsChinese(string source)
255 {
256 return Regex.IsMatch(source, @"^[\u4e00-\u9fa5]+$", RegexOptions.IgnoreCase);
257 }
258 public static bool hasChinese(string source)
259 {
260 return Regex.IsMatch(source, @"[\u4e00-\u9fa5]+", RegexOptions.IgnoreCase);
261 }
262 #endregion
263
264 #region 验证是不是正常字符 字母,数字,下划线的组合
265 /// <summary>
266 /// 验证是不是正常字符 字母,数字,下划线的组合
267 /// </summary>
268 /// <param name="source"></param>
269 /// <returns></returns>
270 public static bool IsNormalChar(string source)
271 {
272 return Regex.IsMatch(source, @"[\w\d_]+", RegexOptions.IgnoreCase);
273 }
274 #endregion
275
276 }
277}
2{
3 using System;
4 using System.Text.RegularExpressions;
5
6 /// <summary>
7 /// RegExp Soruce: http://regexlib.com/DisplayPatterns.aspx
8 /// Author:柳永法 yongfa365 http://www.yongfa365.com/ yongfa365@qq.com
9 /// Intro:验证 网址,IP,邮箱,电话,手机,数字,英文,日期,身份证,邮编,
10 /// 原则上是中国通用,因为各种场合不一样所以有特殊情况肯定要自己再手写,这里只能是提供一些通用的验证,追求太完美是不现实的。
11 /// Version: 1.0
12 /// PutTime: 2008-6-5
13 /// LastModi:2008-6-5
14 /// </summary>
15 ///
16 public class Validator
17 {
18
19 #region 验证邮箱
20 /// <summary>
21 /// 验证邮箱
22 /// </summary>
23 /// <param name="source"></param>
24 /// <returns></returns>
25 public static bool IsEmail(string source)
26 {
27 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);
28 }
29 public static bool HasEmail(string source)
30 {
31 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);
32 }
33 #endregion
34
35 验证网址
50
51 #region 验证日期
52 /// <summary>
53 /// 验证日期
54 /// </summary>
55 /// <param name="source"></param>
56 /// <returns></returns>
57 public static bool IsDateTime(string source)
58 {
59 try
60 {
61 DateTime time = Convert.ToDateTime(source);
62 return true;
63 }
64 catch
65 {
66 return false;
67 }
68 }
69 #endregion
70
71 验证手机号
86
87 验证IP
102
103 验证身份证是否有效
183
184 是不是Int型的
204
205 看字符串的长度是不是在限定数之间 一个中文为两个字符
223
224 是不是中国电话,格式010-85849685
235
236 #region 邮政编码 6个数字
237 /// <summary>
238 /// 邮政编码 6个数字
239 /// </summary>
240 /// <param name="source"></param>
241 /// <returns></returns>
242 public static bool IsPostCode(string source)
243 {
244 return Regex.IsMatch(source, @"^\d{6}$", RegexOptions.IgnoreCase);
245 }
246 #endregion
247
248 #region 中文
249 /// <summary>
250 /// 中文
251 /// </summary>
252 /// <param name="source"></param>
253 /// <returns></returns>
254 public static bool IsChinese(string source)
255 {
256 return Regex.IsMatch(source, @"^[\u4e00-\u9fa5]+$", RegexOptions.IgnoreCase);
257 }
258 public static bool hasChinese(string source)
259 {
260 return Regex.IsMatch(source, @"[\u4e00-\u9fa5]+", RegexOptions.IgnoreCase);
261 }
262 #endregion
263
264 #region 验证是不是正常字符 字母,数字,下划线的组合
265 /// <summary>
266 /// 验证是不是正常字符 字母,数字,下划线的组合
267 /// </summary>
268 /// <param name="source"></param>
269 /// <returns></returns>
270 public static bool IsNormalChar(string source)
271 {
272 return Regex.IsMatch(source, @"[\w\d_]+", RegexOptions.IgnoreCase);
273 }
274 #endregion
275
276 }
277}