C#正则表达式
回答
^(?=.*[A-Z])(?=.*[0-9])[A-Za-z0-9]+$
应该做的。
^ # start of string
(?=.*[A-Z]) # assert that there is at least one capital letter ahead
(?=.*[0-9]) # assert that there is at least one digit ahead
[A-Za-z0-9]+ # match any number of allowed characters
# Use {8,} instead of + to require a minimum length of 8 characters.
$ # end of string
您可以在正则表达式中使用non-zero-width lookahead/lookbehind assertions。例如:
^\w*(?=\w*\d)(?=\w*[a-z])(?=\w*[A-Z])\w*$
要求存在至少一个数字,一个小写字母和一个大写字母。使用\w
可以让您接受非英文或重音字符(您可能希望或不希望允许)。否则,请使用[a-zA-Z]。
这比OP想要的要多得多('\ w'是.NET中的Unicode-aware) - 尽管当然限制有效字母为*密码*也没有多大意义。 – 2010-10-29 20:37:56
@Tim Pietzcker:是的,我知道。我提到'\ w'将接受来自unicode集的重音和国际字符。这是使用[a-zA-Z]构造的替代方案。 – LBushkin 2010-10-29 20:39:42
对不起,我没有仔细阅读你的答案。但是'\ w'也匹配数字和下划线(以及其他的“连续标点符号”字符)。 – 2010-10-29 20:44:49
bool valid =
Regex.IsMatch(password, @"\w+")// add additional allowable characters here
&& Regex.IsMatch(password, @"\d")
&& Regex.IsMatch(password, @"\p{Lu}");
[求助与密码复杂性的正则表达式(的
- 1. 正则表达式(正则表达式)
- 2. 正则表达式(正则表达式)
- 3. C#正则表达式分割和正则表达式
- 4. 正则表达式使用GNU C正则表达式库
- 5. 正则表达式在c中的正则表达式#
- 6. 将C#正则表达式转换为JavaScript正则表达式
- 7. C++正则表达式与提升正则表达式
- 8. Javascript正则表达式到c#正则表达式
- 9. C#正则表达式替换为正则表达式
- 10. 正则表达式C#
- 11. 正则表达式C#
- 12. 正则表达式Objective-c
- 13. 正则表达式C#IsMatch()
- 14. C++正则表达式
- 15. 正则表达式在C#
- 16. mongodb c#$正则表达式
- 17. C#正则表达式
- 18. 正则表达式C
- 19. 正则表达式/ C++
- 20. 子正则表达式C#
- 21. 正则表达式,C#
- 22. c正则表达式howto
- 23. C++正则表达式
- 24. C#正则表达式
- 25. “C:\\”的正则表达式
- 26. C#正则表达式
- 27. C#正则表达式进去表达
- 28. 正则表达式正则表达式正则表达式使用正则表达式,但不是与Python
- 29. PHP-MySQLi替换为正则表达式/正则表达式/正则表达式
- 30. 正则表达式正则表达式返回的值正则表达式
可能重复http://stackoverflow.com/questions/2582079/help-with-password-complexity -regex) – 2010-10-29 20:36:11