0
長さ> 8、少なくとも1桁、少なくとも1つ、[@、#、$のいずれかの規則でユーザー入力を検証するbashスクリプトを作成しようとしています。 ]regex bashによるユーザーパスワードの検証
だから、そのために正規表現がこれです:私はこれを試してみた
((?=.*\d)(?=.*[@#$%&*+-=]).{8,})
、ない結果:$1
された入力パラメータを指定して
result=$(echo $1 | egrep "((?=.*\d)(?=.*[@#$%&*+-=]).{8,})")
echo $result
。また、私はIF句でそれをラップしたいと思いますが、echo
は何も出力しません。何が間違っているのですか?
があなたの代わりにegrep' 'のPerlのサポートのために' grepのの-P'を使用する必要があります。また、条件を満たしていない正規表現をチェックしてください。 – SLePort