728x90
반응형
SMALL
1. 정규 표현식(Regular Expression: Regex)
- 문자열에서 특정 문자 조합을 찾기 위한 패턴
📍정규 표현식을 사용하는 예 - 회원가입
아이디: [ ]
* 아이디는 4자리 이상, 16자리 이하
* 영문 대문자 또는 소문자로 시작해야함
이름: [ ]
* 한글만 사용
비밀번호: [ ]
* 비밀번호는 4자리 이상 또는 15자리 이하
* 대문자 1개이상, 소문자 1개이상, 숫자 1개이상, 특수문자 1개이상
2. 정규 표현식 생성
2-1.리터럴 표기
- 다음과 같이 슬래시로 패턴을 감싸서 작성( / ~ / )
const regex = /ab+c/
2-2. 생성자 호출
- RegExp 객체의 생성자 호출
- 바뀔 수 있는 패턴이나, 사용자 입력 등 외부 출처에서 가져오는 패턴의 경우 사용
const re = new RegExp('ab+c')
3. 정규표현식 패턴 작성
| 표현식 | 의미 |
| ^ | 패턴의 시작 |
| [ ] | 안의 문자를 찾음 |
| [x-z] | x~z 사이의 문자 하나를 찾음 |
| [X-Z] | X~Z 사이의 문자 하나를 찾음 |
| [0-9] | 0~9 사이의 숫자 하나를 찾음 |
| [가-힣] | 가~힣 사이의 문자 하나를 찾음(한글) |
| x+ | x가 1번이상 반복 |
| x$ | 문자열이 x로 끝남 |
| ^x | 문자열이 x로 시작 |
| \d | 숫자 |
| x{n} | x를 n번 반복한 문자를 찾음 |
| x{n,m} | x를 n번 이상 m번 이하 반복한 문자를 찾음 |
| $ | 패턴을 끝냄 |
| + | 수의 제한이 없음 |
| \- | - 포함 |
| \* | * 포함 |
✅ 회원가입 예시
1. 아이디
- 영문 대문자 또는 소문자로만, 길이는 4~20자까지 입력 가능
/^[A-Za-z]{4,20}/
2. 이름
- 한글만 사용
/^[가-힣]+$/
3. 휴대폰 번호
- 앞번호는 3글자, - , 중간번호는 3글자 또는 4글자, - ,마지막번호는 4글자
- 010-111-1111 또는 010-1111-1111
/^\d{3}-\d{3,4}-\d{4}$/
4. 이메일
- 영문 대문자 또는 소문자 또는 숫자로 시작
- 적절한 위치에 @포함, .포함
/^[A-Za-z0-9\-\.]+@[A-Za-z0-9\-\.]+\.+[A-Za-z0-9\-\.]+$/
4. 자바스크립트 정규표현식 적용 함수
- test(): 정규표현식에 대입한 문자열이 적합하면 true, 아니면 false를 리턴
MDN: 정규 표현식
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Regular_expressions
정규 표현식 - JavaScript | MDN
정규 표현식, 또는 정규식은 문자열에서 특정 문자 조합을 찾기 위한 패턴입니다. JavaScript에서는 정규 표현식도 객체로서, RegExp의 exec()와 test() 메서드를 사용할 수 있습니다. String의 match(), matchA
developer.mozilla.org

728x90
반응형
LIST
'Web > JavaScript' 카테고리의 다른 글
| [JavaScript] 자바스크립트 객체 활용법 (0) | 2023.04.14 |
|---|---|
| [JavaScript] 자바스크립트의 함수 메모리 할당 & 함수 작성 팁 (0) | 2023.04.14 |
| [JavaScript] 노드(node)란? & 노드 종류와 관계, 노드 생성/추가/제거/복제하기! (0) | 2023.04.12 |
| [JavaScript] 객체 - 9️⃣ document 객체 & 문서 객체 모델(DOM) (0) | 2023.04.12 |
| [JavaScript] 객체 - 8️⃣ navigator 객체 & geolocation (0) | 2023.04.12 |