I have this regex to test for password complexity (It's only for learning, I know to use readily available libraries and modules for production)
I want it to have at least 1+ upper case, 1+ lower case, 1+ digit, 1+ special char, and min length is 8. I have this so far.
((?=.*[A-Z]{1,})(?=.*\d{1,})(?=.*[^A-Za-z0-9]{1,})(?=.*[a-z]{1,})){8,}
But this doesn't match my password
zaq1@WSX
Here's the like to regex101
What am I missing?