I am trying to validate a password by using a regex.

* Must be between 6 to 16 characters long
* Must contain atleast 1 uppercase letter
* Must contain atleast 1 lowercase letter
* Must contain atleast 1 numeric "digit"

So far so good ...
Code:
(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{6,16})$
* I am stuck here! Can optionally have any number of special characters listed below
Code:
 ! @ $ - _ .
Any help would be greatly appreciated.

Cheers