ホームページ  >  記事  >  バックエンド開発  >  Go で正規表現を使用してパスワードを検証する方法は?

Go で正規表現を使用してパスワードを検証する方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-04 04:46:01658ブラウズ

How to Validate Passwords with Regexp in Go?

Go の正規表現を使用したパスワード検証

正規表現パターンは、パスワードを含むユーザー入力を検証するための強力なツールです。 Go では、正規表現パッケージは他の言語とは異なるアプローチを提供します。ただし、パスワード検証用の正規表現パターンの構築は簡単です。

次の条件を満たすパスワードを検証するには:

  • 少なくとも 7 文字
  • 少なくとも 1 文字数値
  • 少なくとも 1 つの大文字
  • 少なくとも 1 つの特殊文字

これらの要件を検証するカスタム関数を作成できます:

<code class="go">func verifyPassword(s string) (sevenOrMore, number, upper, special bool) {
    letters := 0
    for _, c := range s {
        switch {
        case unicode.IsNumber(c):
            number = true
        case unicode.IsUpper(c):
            upper = true
            letters++
        case unicode.IsPunct(c) || unicode.IsSymbol(c):
            special = true
        case unicode.IsLetter(c) || c == ' ':
            letters++
        default:
            //return false, false, false, false
        }
    }
    sevenOrMore = letters >= 7
    return
}</code>

この関数はパスワード文字列を反復処理し、各文字の種類 (数字、大文字など) をチェックします。また、文字の合計数も追跡します。これらのチェックを組み合わせることで、パスワードが指定された基準をすべて満たしているかどうかを判断できます。

以上がGo で正規表現を使用してパスワードを検証する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。