会员生成密码仅有字母数字的密码?

 2023-02-16    348  

问题描述

如何使用成员身份.GenerePassword返回仅包含Alpha或数字字符的密码?默认方法只能保证最小而不是最大数量的非字母数字密码.

推荐答案

string newPassword = Membership.GeneratePassword(15, 0);
newPassword = Regex.Replace(newPassword, @"[^a-zA-Z0-9]", m => "9" );

这个正则表达式将用数字字符9替换所有非字母数字字符.

会员生成密码仅有字母数字的密码?

其他推荐答案

我意识到可能有这样做的方法. GUID方法很棒,除了它不会混合大写和小写字母.在我的情况下,它仅生产小写.

所以我决定使用正则表达式来删除非alphas,然后将结果子字段对我所需的长度子字符串.

string newPassword = Membership.GeneratePassword(50, 0); 

newPassword = Regex.Replace(newPassword, @"[^a-zA-Z0-9]", m => ""); 

newPassword = newPassword.Substring(0, 10);

其他推荐答案

获得8个字符的字母数字密码的简单方法是生成GUID并使用它作为基础:

string newPwd = Guid.NewGuid().ToString().Substring(0, 8);

如果您需要更长的密码,只需使用子串跳过破折号:

string newPwd = Guid.NewGuid().ToString().Substring(0, 11);
newPwd = newPwd.Substring(0, 8) + newPwd.Substring(9, 2); // to skip the dash.

如果要确保第一个字符是alpha,则可以在需要时替换为固定字符串(newpwd [0]> =’0’&& newpwd [0]

我希望有人能找到这个有用的. : – )

以上所述是小编给大家介绍的会员生成密码仅有字母数字的密码?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/33868.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。