vb.net – 是否有更简洁的正则表达式来完成此任务?
发布时间:2020-12-17 00:01:32 所属栏目:大数据 来源:网络整理
导读:首先,抱歉蹩脚的头衔,但我想不出更好的一个.我需要测试密码以确保以下内容: 密码必须至少包含以下3项内容: 大写字母 小写字母 数字 特殊字符 这是我提出的(它有效,但我想知道是否有更好的方法): Dim lowerCase As New Regex("[a-z]") Dim upperCase As Ne
首先,抱歉蹩脚的头衔,但我想不出更好的一个.我需要测试密码以确保以下内容:
密码必须至少包含以下3项内容: >大写字母 这是我提出的(它有效,但我想知道是否有更好的方法): Dim lowerCase As New Regex("[a-z]") Dim upperCase As New Regex("[A-Z]") Dim numbers As New Regex("d") Dim special As New Regex("[.+*?^$[]()|{}/'#]") Dim count As Int16 = 0 If Not lowerCase.IsMatch(txtUpdatepass.Text) Then count += 1 End If If Not upperCase.IsMatch(txtUpdatepass.Text) Then count += 1 End If If Not numbers.IsMatch(txtUpdatepass.Text) Then count += 1 End If If Not special.IsMatch(txtUpdatepass.Text) Then count += 1 End If 如果至少有3个标准未得到满足,我会处理它.我不熟悉正则表达式,并且已经在网上阅读了大量的教程.有没有办法将所有4个正则表达式合并为一个?但我想这样做不会让我检查是否满足至少3个标准. 另外,是否有一个网站有一个详尽的列表,列出了需要在正则表达式中转义的所有字符(具有特殊含义的那些 – 例如.$,^等)? 一如既往,TIA.我无法表达我认为这个网站有多棒.
你拥有它的方式是尽可能好.你可以在一行中完成这一切,但它会非常混乱,根本不会真正有用.
想想你想要做什么;你想检查四个不同的标准.由于每个标准基本上都是单一的比较,因此您需要单独检查每个标准,这就是您正在做的事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |