質問: preg_match('/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8,}/', $password) の意味がわかりません。 ?=とはなんでしょうか。 ='hello';?>はhelloと出るのはわかります。 .→任意の一文字 X*→0文字以上のX preg_matchの?=ってなんでしょうか。 ``` パスワードを入力してください。 (8文字以上で、英小文字、英大文字、数字を各1文字以上含むこと) ``` ``` ```
回答: PHPの正規表現で分からないことがあったら、PHPのマニュアルの正規表現の部分を見ましょう。 http://jp2.php.net/manual/ja/reference.pcre.pattern.syntax.php もし、マニュアルの説明で分からなかったら、正規表現についての基本的な理解が不足していると言うことなので、「正規表現入門」のような書籍やサイトを読むのが良いと思います。