英数字のユーザー入力を検証するための次のコードがあります
if (!preg_match("/^[A-Za-z][A-Za-z0-9.]*(?:_[A-Za-z0-9]+)*$/", $username)){
echo "invalid username";
}
入力に (AZ) (0-9) 英数字以外の文字があるかどうかをチェックします。さらに、(_) アンダースコアも受け入れることができますが、文字列の間に としてのみ配置する必要がありますが、またはmy_name
は受け入れません。_myname
myname_
私の質問は、たとえば (my.name) または (myn.ame) などを受け入れるが (.myname) (myname.) を受け入れないように、アンダースコアで制約されるのと同じように、上記のコードにドット (.) 文字を追加するにはどうすればよいかということです。