internal static bool CheckPasswordRegex(StudioPasswordSettings passwordSettings, string password) { var pwdBuilder = new StringBuilder(@"^(?=.*\p{Ll}{0,})"); if (passwordSettings.Digits) { pwdBuilder.Append(@"(?=.*\d)"); } if (passwordSettings.UpperCase) { pwdBuilder.Append(@"(?=.*\p{Lu})"); } if (passwordSettings.SpecSymbols) { pwdBuilder.Append(@"(?=.*[\W])"); } pwdBuilder.Append(@".{"); pwdBuilder.Append(passwordSettings.MinLength); pwdBuilder.Append(@",}$"); return(new Regex(pwdBuilder.ToString()).IsMatch(password)); }
internal static string GenerateErrorMessage(StudioPasswordSettings passwordSettings) { var error = new StringBuilder(); error.AppendFormat("{0} ", Resources.Resource.ErrorPasswordMessage); error.AppendFormat(Resources.Resource.ErrorPasswordShort, passwordSettings.MinLength); if (passwordSettings.UpperCase) error.AppendFormat(", {0}", Resources.Resource.ErrorPasswordNoUpperCase); if (passwordSettings.Digits) error.AppendFormat(", {0}", Resources.Resource.ErrorPasswordNoDigits); if (passwordSettings.SpecSymbols) error.AppendFormat(", {0}", Resources.Resource.ErrorPasswordNoSpecialSymbols); return error.ToString(); }
internal static bool CheckPasswordRegex(StudioPasswordSettings passwordSettings, string password) { var pwdBuilder = new StringBuilder(@"^(?=.*\p{Ll}{0,})"); if (passwordSettings.Digits) pwdBuilder.Append(@"(?=.*\d)"); if (passwordSettings.UpperCase) pwdBuilder.Append(@"(?=.*\p{Lu})"); if (passwordSettings.SpecSymbols) pwdBuilder.Append(@"(?=.*[\W])"); pwdBuilder.Append(@".{"); pwdBuilder.Append(passwordSettings.MinLength); pwdBuilder.Append(@",}$"); return new Regex(pwdBuilder.ToString()).IsMatch(password); }