정규 표현식은 문자열에 나타는 특정 문자 조합과 대응시키기 위해 사용되는 패턴이다. (from MDN)
Method 종류로는 test, String의 match, replace, search, split method와 함께 쓰인다.
regular expression, regex 또는 regexp라고 많이 쓴다.
const pattern = /^ $/
: /로 감싼다.
: ^ 줄의 처음
: $ 줄의 끝
const phoneReg = /^01(0|1[6-9])(\d{3,4})(\d{4})$/;
const phoneValid = phoneReg.test(value);
test는 Boolean 값을 반환한다.
간단 설명 :
1) 01로 시작하고 다음은 0, 1, 6, 7, 8, 9가 온다.
2) \d : digit
3) {3, 4} : 3자리 또는 4자리
4) {4} : 4자리
즉, 크게 ()로 나누어서
1) 010, 011, 016, 017, 018, 019
2) 0-9까지 숫자 3자리 ex) 123,455, 675 이런식
3) 0-9까지 숫자 4자리 ex) 1234,4255, 6775 이런식
추가
1) [a-z] : 영어 소문자 a-z
2) [A=Z] : 영어 대문자 A-Z
3) [0-9] : 숫자 0-9
4) [A=Za-z0-9] : 영어 소문자, 대문자, 숫자 모두
=> \w로 사용 할 수도 있다.
ex) /^\w{12}$/ : 영어 소문자, 대문자, 숫자 12자리