以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [原创]判断密码等级自定义函数 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=185681) |
-- 作者:9EQ98 -- 发布时间:2023/3/9 21:00:00 -- [原创]判断密码等级自定义函数 \' 分享1个判断密码等级函数 \' 判断密码等级(定义自等义函数:PassWord_Tier) \' 传入参数:密码 \' 密码:Pass_Str \' 返回:等级级别(1至6) \' 示例: 在命令窗口中取消注释执行 \' DIM Pass_Tier AS Integer = Functions.Execute("PassWord_Tier","Aa8*>?~") \' Output.Show(Pass_Tier) Dim InPass_Str As String = "" \' 传入值 Dim Pass_Tier As Integer = 0 Dim Counts As Decimal = Args.Count() \'传入参数的个数 If Counts >= 1 Then \'根据传入的参数赋值 InPass_Str = Args(0) Else Return Nothing End If If InPass_Str = "" Then Return 0 End If Dim 数字 As Boolean = False \' IsDigit Dim 小写 As Boolean = False \' IsLower Dim 大写 As Boolean = False \' IsUpper Dim 标点 As Boolean = False \' IsPunctuation Dim 字母 As Boolean = False \' IsLetter Dim 符号 As Boolean = False \' IsSymbol For I As Integer = 0 To InPass_Str.Length - 1 \'Dim 显示 As String = "" \' 注释 Dim Str As String = InPass_Str.Substring(I, 1) \'显示 = Str & " " & Asc(STR) & " " \' 注释 If Char.IsLower(Str) = True Then 小写 = True \'显示 = 显示 & "小写字母" & " " \' 注释 End If If Char.IsUpper(Str) = True Then 大写 = True \'显示 = 显示 & "大写字母" & " " \' 注释 End If If Char.IsNumber(Str) = True Then 数字 = True \'显示 = 显示 & "数字" & " " \' 注释 End If If Char.IsPunctuation(Str) = True Then 标点 = True \'显示 = 显示 & "标点符号" & " " \' 注释 End If If Char.IsSymbol(Str) = True Then 符号 = True \'显示 = 显示 & "符号字符" & " " \' 注释 End If \' If Char.IsSeparator(Str) = True Then \' 注释 \' 分隔 = True \' 注释 \' 显示 = 显示 & "分隔符" \' 注释 \' End If \' If Char.IsDigit(Str) = True Then \' 注释 \' 显示 = 显示 & "十进制数字" \' 注释 \' End If \' 注释 \' If Char.IsLetter(Str) = True Then \' 注释 \' 显示 = 显示 & "字母" & " " \' 注释 \' End If \' 注释 \' If Char.IsLetterOrDigit(Str) = True Then \' 注释 \' 显示 = 显示 & "字母和十进制数字" \' 注释 \' End If \' 注释 \' If Char.IsWhiteSpace(Str) = True Then \' 注释 \' 显示 = 显示 & "空白" \' 注释 \' End If \' 注释 \' If Char.IsControl(Str) = True Then \' 注释 \' 显示 = 显示 & "控制字符" \' 注释 \' End If \' 注释 \' Output.Show(显示) \' 注释 Next If InPass_Str.Length >= 4 Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 数字 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 小写 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 大写 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 标点 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 字母 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If If 符号 = True Then \' 密码字符长度 Pass_Tier = Pass_Tier + 1 End If Return Pass_Tier
|