2024. 5. 23. 11:34ㆍJavaScript
정규표현식(Regular Expression, RegExp)
- 정규표현식(또는 정규식)
- 특정한 규칙을 가진 문자열 집합을 표현하는 데 사용하는 형식 언어
- 입력된 문자열에 대한 특정 조건 검색, 일치여부 판단, 조건문을 간단히 처리할 수 있음
정규표현식 생성 방법
1. const regExp = /^정규표현식$/;
/^ : 정규표현식 시작
$/ : 정규표현식 종료
2. const regExp = new RegExp("정규표현식");
문자열 패턴 확인
1. regExp.test(문자열)
- 문자열에 정규표현식과 일치하는 패턴이 있을 경우 true, 없으면 false 반환
2. regExp.exec(문자열)
- 문자열에 정규표현식과 일치하는 패턴이 있을 경우 처음 매칭되는 문자열 반환. 없으면 null 반환
정규표현식 문자 매칭 방법
[] : 대괄호 안의 어떤 문자와 일치하는가
/^[a,b,c,d]$/ : a,b,c,d 중 하나라도 일치하는 문자가 있는지 검색
- [0-9] : 0 ~ 9 모든 숫자
- [ㄱ-힣] : ㄱ부터 힣까지 모든 한글
- [가-힣] : '가'부터 '힣'까지 모든 한글 (ㄱ-ㅎ ㅏ-ㅣ 제외)
- [a-z] : 모든 소문자 영어
- [A-Z] : 모든 대문자 영어
[^] : 대괄호 안의 문자와 일치하지않음
[^abcd] : a,b,c,d 중에 하나라도 일치하는 문자가 없어야 함 -> 제외
[A-Z]{5} : A-Z 사이의 5자리 입력
[A-Z]{2,5} : A-Z 사이의 2~5자리 입력
[A-Z]{2,} : A-Z 사이의 2자리 이상 입력
() : 그룹을 형성하고 일치하는 부분 문자열을 기억
(19|20) : 19나 20과 일치하는가
\d : 0 ~ 9 중 아무 숫자
\s : 띄어쓰기, 엔터, 탭 등 아무 공백 문자
ex)
const 생년월일정규식 = /^(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])$/;
(19|20) : 19 또는 20으로 시작한느 부분을 매칭. => 1900년대 또는 2000년대
(0[1-9]|1[0-2]) : 01 ~ 09 또는 10 ~ 12 -> 월
(0[1-9]|[1-2][0-9]|3[0-1]) : 01~09 또는 10 ~ 29 또는 30 ~ 31 -> 일
/^(19|20)\d{6}$/ -> 1900~2000년개 이후 6자리 작성
/^\d{8}$/ -> 생년월일 '-' 뺴고 8자리 입력
'JavaScript' 카테고리의 다른 글
자바스크립트 정리 (0) | 2024.05.28 |
---|---|
Window 내장 객체 (0) | 2024.05.27 |
JS 실습 - 클릭한 숫자 기록하기 (0) | 2024.05.22 |
for문 in, of (0) | 2024.05.22 |
JS 실습 - 유효성검사 (0) | 2024.05.22 |