次の正規表現パターン(PHPの場合)は、任意の電子メールアドレスを検証するためのものです。
^[\w.-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}$
「大文字および/または小文字の少なくとも1つ(またはそれ以上)、および/またはピリオド、アンダースコアおよび/またはダッシュの後に1つだけの@が続き、その後に少なくとも1つ(またはそれ以上)の大文字および/または小文字、および/またはピリオド、および/またはアンダースコアの後に1つだけのピリオドが続き、その後に2〜6個の大文字および/または小文字が続きます。
これは私が考えることができるどのメールアドレスとも一致するようです。それでも、それを正しくするというこの感覚はおそらく欺瞞的です。知識のある人が、私が気付いていないこのパターンの明らかな、またはそれほど明白ではない脆弱性を指摘してください。これにより、意図したとおりに電子メールの検証が実行されなくなります。
(可能な応答を予測するために、filter_var()関数がより堅牢なソリューションを提供することを認識していますが、この場合の正規表現に特に関心があります。)
注:これは、正規表現のPHPフレーバーに関する理論的な質問であり、電子メールの検証に関する実際的な質問ではありません。この場合、正規表現で合理的に可能なことの限界を判断したいだけです。
前もって感謝します!