처음에 정규표현식 (Regular Expression)을 보고 왠 외계어인가 싶었다
여전히 나에게 외계어인건 마찬가지지만...
정규표현식에 대해 살펴보고, 과제 중 알아낸 몇몇 패턴에 대해 함께 살펴보자!
정규표현식이란 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어이다.
/ 조건 /.test("검사하고 싶은 것")
test method를 사용하여 확인할 문자열, 비밀번호 등을 넣어주면 조건에 해당할 경우 (=조건과 하나라도 불일치하는 경우) false값을, 조건에 해당하지 않으면 (=조건과 일치하는 경우) true 값을 리턴한다.
문자열.matches(/ 조건 /)
정규식 표현식 조건과 호출한 문자열 내 문자열이 일치할 경우 true 값을 리턴하며, 일치하지 않을 경우 false 값을 리턴한다.
문자 의미 | 문자 |
---|---|
문자열 | \w |
숫자 | \d |
없거나 한개 | ? |
하나 이상일 때 | + |
특정개수 지정 | {} |
또는 | , |
~ 사이 | - |
모든 | . |
원래 가지고 있는 의미 탈피 | \ |
if (writer.matches(/^[ㄱ-하-ㅣ가-힣\w]{1,5}$/))
return true
if (title.matches(/^[\w]{1,100}$/))
return true
if (password.matches(/^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{1,8}$/))
return true