2011-11-04 139 views
0

任何人都可以为我提供regx验证程序,验证以下内容;C#字母数字密码验证?

密码必须是字母数字密码,即至少1个数字和至少1个字母。

我尝试了以下,但它没有奏效。

(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9])$ 
+5

可能的重复[正则表达式字母数字密码,至少1个数字和字符](http://stackoverflow.com/questions/1195665/regex-for-alphanumeric-password-至少有1个数字和字符) – CodeNaked

+1

所以你想让我们为你写代码? –

+0

@ Muad'Dib:同意!闻起来像一个家庭作业的问题...这是我的正则表达式建设的源代码,但你必须以不同的方式转义不同的W/C#... http://gskinner.com/RegExr/ – Rikon

回答

3

你几乎在那里,你只需要为你的最后一个表达式添加一个量词,它就会正常工作。所以,它应该是这样的

(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{2,})$

代码看起来像这样

Regex regexObj = new Regex(@"(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{2,})$"); 
boolean foundMatch = regexObj.IsMatch(passwordString); 

您正在匹配单个数字或字母作为[a-zA-Z0-9]单alphanum字符匹配。阅读关于字符类([]http://www.regular-expressions.info/charclass.html