我正在尝试验证密码是否至少包含一个字母和数字。
以下似乎不起作用。
密码可以是“tester1”或“11111111t”等
不能全是字母,也不能全是数字。
有什么想法吗?
const string pattern = @"/[a-z].*\d|\d.*[a-z]/";
var match = Regex.Match(password, pattern);
已解决:
var rule1 = password.Any(char.IsLetter);
var rule2 = password.Any(char.IsNumber);
这也有效:
const string pattern = @"[a-z].*\d|\d.*[a-z]";
请您参考如下方法:
我不使用正则表达式,而是使用更易于维护的简单规则。例如:
var rule1 = str.All(char.IsLetter);
var rule2 = str.All(char.IsNumber);
您还可以通过 char.IsLower、char.IsUpper 等丰富您的规则
