
정규표현식(Regular Expression)은 줄여서 정규식이라고 하는데 문자열에서 특정 내용을 찾거나 대체 또는 뽑아낼때 사용한다.
- 많은양의 전화번호 데이터를 추출해야 할 때
- 로그인 또는 회원가입시 사용자가 입력하는 아이디, 이메일, 전화번호 등이 올바른지 검정할 때
- 코드를 짤때 특정 변수의 이름을 바꾸고 싶은데, 해당 변수의 이름을 포함하고 있는 함수는 제외하고 싶을 때
- 문자열에 포함된 공백이나 특수문자를 제거하고 싶을때
가독성이 좋지 않다. 주석이나 공백을 허용하지 않으며 여러가지 기호를 붙여서 사용하기 때문이다.
| 숫자 | ^[0-9]*$ |
| 영문자 | ^[a-zA-Z]*$ |
| 한글 | ^[가-힣]*$ |
| 영어&숫자 | ^[a-zA-Z0-9]*$ |
| 비밀번호 (숫자, 문자 포함의 6~12자리 이내) | ^[A-Za-z0-9]{6,12}$ |
| 비밀번호 (숫자, 문자, 특수문자 포함 8~15자리 이내) | ^.*(?=^.{8,15}$)(?=.*\d)(?=.*[a-zA-Z])(?=.*[!@#$%^&+=]).*$ |
| 이메일 | ^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$ |
| 휴대전화 | ^\\d{3}-\\d{3,4}-\\d{4}$ |
| 일반전화 | ^\\d{2,3}-\\d{3,4}-\\d{4}$ |
| 주민등록번호 | \d{6} \- [1-4]\d{6} |
| 파일확장자 | ^\\S+.(?i)(txt|pdf|hwp|xls)$ |
| 이중 파일확장자 | (.+?)((\\.tar)?\\.gz)$ |
[0-9] 또는 [a-zA-Z] 처럼 자주 사용하는 정규식은 별도의 표기법으로 표현할 수 있다.
| \d | 숫자와 매치, [0-9]와 동일한 표현 |
| \D | 숫자가 아닌 것과 매치, [^0-9]와 동일한 표현식 |
| \w | 문자+숫자와 매치, [a-zA-Z0-9_]와 동일한 표현식 |
| \W | 문자+숫자가 아닌 문자와 매치,[^a-zA-Z0-9_]와 동일한 표현식 |
| callback, promise, async/await 의 특징과 차이점 (0) | 2022.10.19 |
|---|---|
| 정규표현식에 대해 알아보자! (0) | 2022.09.07 |
| 클로져에 대한 설명과 클로져의 사용 예제 (0) | 2022.08.24 |
| 스코프(Scope)란? (0) | 2022.08.23 |
| removeChild와 remove의 차이 (0) | 2022.08.23 |