Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
403 views
in Technique[技术] by (71.8m points)

regex - Regular Expression for Password

I need help creating a password regex. A password must contain at least 4 characters, letters (uppercase and lowercase), numbers and special characters - no spaces.

msn like regular expression.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

This regex works - see test data and output below:

^(?=.{4,})(?=.*d)(?=.*[a-z])(?=.*[A-Z])(?!.* )(?=.*[@#$%^&+=i.,!?:;*/])

Test data in passwords.txt (only the first should pass):

aB#1
aB #1
ab#1
AB#1
aB#a
aB1a
aB1

mac-osx> grep -P '^(?=.{4,})(?=.*d)(?=.*[a-z])(?=.*[A-Z])(?!.* )(?=.*[@#$%^&+=i.,!?:;*/])' passwords.txt
aB#1

You can add whatever extra "special characters" you need into the last look ahead regex's character class.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...