C# パスワードの複雑さのチェック

C# では、正規表現を使用してパスワードの複雑さの検証を実装できます。簡単な例を次に示します。

using System;
using System.Text.RegularExpressions;

class Program
{
    
    
    static void Main(string[] args)
    {
    
    
        string password = "Abc123";

        if (IsPasswordValid(password))
        {
    
    
            Console.WriteLine("密码复杂性校验通过");
        }
        else
        {
    
    
            Console.WriteLine("密码不符合复杂性要求");
        }
    }

    static bool IsPasswordValid(string password)
    {
    
    
        // 密码复杂性校验的正则表达式
        string pattern = @"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$";

        // 使用正则表达式进行匹配
        Match match = Regex.Match(password, pattern);

        return match.Success;
    }
}

上記の例では、パスワードの複雑さの要件を検証するために正規表現が使用されています。正規表現の意味は次のとおりです。

  • ^: 入力文字列の先頭と一致します。
  • (?=.*[a-z]): 少なくとも 1 つの小文字が含まれています
  • (?=.*[A-Z]): 少なくとも 1 つの大文字が含まれています
  • (?=.*\d): 少なくとも 1 つの数字が含まれます
  • .{8,}:8文字以上が含まれています
  • $:入力文字列の終了位置と一致します

パスワードが上記の要件を満たしている場合は を返し、trueそうでない場合は を返しますfalseこの例では、パスワードは「Abc123」であり、複雑さの要件を満たしているため、出力は「パスワードの複雑さの検証に合格しました」となります。

おすすめ

転載: blog.csdn.net/qq_41177135/article/details/132038969