RegularValidate.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. // 大名科技(天津)有限公司版权所有 电话:18020030720 QQ:515096995
  2. //
  3. // 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证
  4. namespace Admin.NET.Core;
  5. /// <summary>
  6. /// 正则校验
  7. /// </summary>
  8. public static class RegularValidate
  9. {
  10. /// <summary>
  11. /// 验证密码规则
  12. /// </summary>
  13. /// <param name="password"></param>
  14. /// <returns></returns>
  15. public static bool ValidatePassword(string password)
  16. {
  17. var regex = new Regex(@"
  18. (?=.*[0-9]) #必须包含数字
  19. (?=.*[a-z]) #必须包含小写
  20. (?=.*[A-Z]) #必须包含大写
  21. (?=([\x21-\x7e]+)[^a-zA-Z0-9]) #必须包含特殊符号
  22. .{8,30} #至少8个字符,最多30个字符
  23. ", RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace);
  24. //如果要求必须包含小写、大写字母,则上面的(?=.*[a-zA-Z]) 要改为:
  25. /*
  26. * (?=.*[a-z])
  27. * (?=.*[A-Z])
  28. */
  29. return regex.IsMatch(password);
  30. }
  31. }