https://www.freeformatter.com/java-regex-tester.html
// 1. 가장 많이 사용되는 최소 8자리에 숫자, 문자, 특수문자 각각 1개 이상 포함
^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$
// 2. 최소 8자리에 대문자 1자리 소문자 한자리 숫자 한자리
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$
// 3. 최소 8자리에 대문자 1자리 소문자 1자리 숫자 1자리 특수문자 1자리
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&]{8,}