[우아한테크코스] 8월 3일 TIL
[Java] 정규표현식 정리
^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,20}$
위와 같이 표현할 경우 ()에 들어있는 조건을 필수로 포함하는 [] 안에 들어있는 문자들로 만들어진 길이 {} 안의 문자열이다.
-
^
문자열 시작 -
$
문자열 종료 -
.
임의의 한 문자 -
*
앞 문자가 없을 수도 무한일수도 -
+
앞 문자가 하나 이상 -
?
앞 문자가 없거나 하나 -
[]
문자의 집합이나 범위로 ^가 선행하면 not -
{}
횟수나 범위 -
()
소괄호 안의 문자를 하나의 문자로 인식 -
|
or 연산 -
\s
공백 문자 -
\S
공백 문자가 아닌 나머지 문자 -
\w
알파벳이나 숫자 -
\W
알파벳이나 숫자를 제외한 문자 -
\d
숫자 -
\D
숫자를 제외한 모든 문자 -
\
확장자로 이 뒤에 오면 문자 자체 -
(?i)
대소문자 구분 x
8~15자 이내 숫자, 문자, 특수문자 포함 비밀번호 ^.*(?=^.{8,15}$)(?=.*\d)(?=.*[a-zA-Z])(?=.*[!@#$%^&+=]).*$