C#中判断密码字符强度 并设置对应颜色
C#中判断密码字符强度 并设置对应颜色
1.判断字符强度并返回等级1-弱,2-中,3-强,4-安全
private int CodeLevel(string str)
{
int level = 0;
int ilowchar = 0; //是否包含小写字母
int icapchar = 0; //是否包含大写字母
int inum = 0; //是否包含数字
int iother = 0; //是否包含特殊字符
if (str.Count() < 6)
{
level = 0; //等级低
return level;
}
else
{
foreach (char c in str)
{
int ic = Convert.ToInt32(c);
if (ic >= 48 && ic <= 57) //数字
{
inum = 1;
}
else if (ic >= 65 && ic <= 90) //大写字母
{
icapchar = 1;
}
else if(ic >= 97 && ic <= 122) //小写字母
{
ilowchar = 1;
}
else //其他字符
{
iother = 1;
}
}
}
level = ilowchar + icapchar + inum + iother;
return level;
}
2.根据返回值不同去设置不同的显示
switch (CodeLevel(str))
{
case 1:
progress_pas.Value = 25;
progress_pas.Foreground = new SolidColorBrush(Color.FromArgb(255, 224, 240, 135));
break;
case 2:
progress_pas.Value = 50;
progress_pas.Foreground = new SolidColorBrush(Color.FromArgb(255, 255, 0, 0));
break;
case 3:
progress_pas.Value = 75;
progress_pas.Foreground = new SolidColorBrush(Color.FromArgb(255, 255, 153, 0));
break;
case 4:
progress_pas.Value = 100;
progress_pas.Foreground = new SolidColorBrush(Color.FromArgb(255, 51, 204, 0));
break;
default:
progress_pas.Value = 0;
break;
}
- 上一篇: 密码验证,密码强度正则表达式
- 下一篇: 检查密码复杂度的C#正则表达式