ホームページ  >  記事  >  ウェブフロントエンド  >  正規表現を使用してパスワードの強度を決定する例を共有する

正規表現を使用してパスワードの強度を決定する例を共有する

零下一度
零下一度オリジナル
2017-06-17 10:54:331401ブラウズ

この記事では、正規表現を使用してパスワードの強度を決定するサンプルコードを共有します。これは非常に優れており、必要な友人はそれを参照できます

Pythonの再学習してください。記事を書いて気づいたのですが、人々はそれを見て、経験を要約します。理論を好む人はいません。したがって、理論を直接実践して洗練する必要があります。練習する。早速、コードから始めましょう


def password_level(password):
 weak = re.compile(r'^((\d+)|([A-Za-z]+)|(\W+))$')
 level_weak = weak.match(password)
 level_middle = re.match(r'([0-9]+(\W+|\_+|[A-Za-z]+))+|([A-Za-z]+(\W+|\_+|\d+))+|((\W+|\_+)+(\d+|\w+))+',password)
 level_strong = re.match(r'(\w+|\W+)+',password)
 if level_weak:
  print 'password level is weak',level_weak.group()
 else:
  if (level_middle and len(level_middle.group())==len(password)):
   print 'password level is middle',level_middle.group()
  else:
   if level_strong and len(level_strong.group())==len(password):
    print 'password level is strong',level_strong.group()

説明してください

弱いパスワード: すべての数字、記号、文字

中程度のパスワード: 数字と記号、数字と文字、文字と記号

強いパスワード : 3混合した。

大文字と小文字は区別していませんので、興味のある方はご自身で書いていただければと思います。問題は w で発生します。これは、w が [A-Za-z0-9_] に相当するため、初期段階では、W はアンダースコアを含む

文字列と一致することができません

中間のパスワードに数字を加えたものを見てみましょう。記号または文字、または _ はグループです。 文字と記号、または下線、または記号はグループです。 記号または下線と文字または数字はグループです。 このコードは間違っているといつも感じますが、何も間違っていません。それでは、まずこのバージョン 0.0.1 を使用してみましょう

コードをテストしてください


以上が正規表現を使用してパスワードの強度を決定する例を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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