정규표현식(Regular Expression)에 대해 알아보고 활용해보자
정규표현식이란?
정규표현식(Regular Expression), 줄여서 “정규식”이라고 불리우는 해당 표현식은 텍스트 패턴을 검색하고 일치하는 문자열을 찾기 위한 패턴 기술이다. 정규식은 문자열 내에서 특정한 규칙이나 패턴을 검색하고 추출하는 데 사용된다.
정규식은 일련의 문자들로 구성된 문자열을 나타내는데, 이러한 문자열은 특정 패턴을 나타낸다. 여기서 패턴은 문자열 내에서 찾고자 하는 일종의 규칙을 의미한다.
정규식은 다양한 문자 및 메타문자로 구성이 된다. 간단한 문자는 그자체로 일치하는 것을 나타내지만, 메타문자는 다양한 특별한 의미를 갖는다. 예를들어, ‘ . ’ 는 임의의 문자를 나타내며, ‘ * ’ 는 바로 앞의 패턴이 0회 이상 반복되는 것을 나타낸다.
정규식은 다음과 같이 다양한 상황에서 사용 될 수 있다.
- 특정 문자열 패턴을 검색하고 추출 (ex. e-mail, URL 등)
- 텍스트에서 특정 단어나 구문을 치환
- 입력 데이터의 유효성 검사 (ex. 숫자만 입력 가능 등)
- 로그 파일에서 특정한 패턴을 추출하여 분석
정규식은 매유 강력하고 유연한 도구이지만, 복잡한 패턴을 이해하고 작성하는 데 시간이 걸릴 수 있다. 또한 잘못 사용 할 경우 성능 문제를 일으킬 수도 있기 때문에 정규식을 사용할 때는 패턴을 주의깊게 사용해야 한다.
정규표현식의 활용
1
2
3
4
// 정규식 조건에 부합하면 true 반환
const validate = (value) => {
return REG_EXP.test(value);
};
1. 숫자만 허용
1
const REG_EXP = /^[0-9]+$/;
2. 한글, 영어, 숫자 만 허용
1
const REG_EXP = /^[가-힣a-zA-Z0-9]*$/;
3. 한글, 영어, 한자 만 허용
1
const REG_EXP = /^[가-힣a-zA-Z一-龥]*$/;
4. 숫자, 영어, 특수문자(!, @, #, $, %, ^, &, *, (, ), -, =, _, +)
1
const REG_EXP = /^[a-zA-Z0-9!@#$%^&*()-=_+]*$/;
5. 이메일 패턴 허용
1
const REG_EXP = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
This post is licensed under CC BY 4.0 by the author.