110,545
社区成员
发帖
与我相关
我的任务
分享
var p = @"(?=.*A)(?=.*B)(?=.*C)(?=.*D)(?=.*E)(?=.*F)(?=.*G)";
Console.WriteLine(Regex.IsMatch("ABCDEFG", p)); //True
Console.WriteLine(Regex.IsMatch("BACDEFG", p)); //True
Console.WriteLine(Regex.IsMatch("EFGBACD", p)); //True
Console.WriteLine(Regex.IsMatch("EFOBACD", p)); //False
这种形式的规则串,多用于口令强度检查 var zuhe = "ABCDEFG";
var arr =new string[] { "BACDEFG", "EFGBACD","KCWOQKDL<LAKDKQ" };
foreach (var str in arr)
{
var eq = zuhe.Intersect(str).Distinct().Count() == zuhe.Length;
Console.WriteLine("{0} 符合规则 {1}", str, eq);
}