
정규식(Regular Expressions)은 텍스트 데이터에서 특정 패턴을 찾거나 수정하는 데 사용됨. 자바스크립트에서는 정규식을 통해 문자 검색, 대체, 유효성 검사 등을 쉽게 수행 가능
/패턴/플래그정규식의 기본 구조는 /패턴/플래그 형식을 따름. 패턴은 찾고자 하는 문자열을 나타내고, 플래그는 검색 조건을 지정함
자바스크립트에서 자주 사용하는 주요 플래그:
/ain/g는 "ain"이 포함된 모든 문자열을 찾음/cat/i는 "cat", "Cat", "CAT" 등의 모든 대소문자 조합을 찾음플래그는 하나 이상 동시에 사용 가능하여 더 세밀한 검색이 가능함
const text = "Cat, cat, CAT";
const pattern = /cat/gi;
const matches = text.match(pattern);
console.log(matches); // Output: ["Cat", "cat", "CAT"]
위 예제에서는 /cat/gi를 사용하여 대소문자 구분 없이 문자열 내 "cat"이 등장하는 모든 항목을 찾음
const text = "The cat and the hat";
const pattern = /at/g;
// 특정 패턴('at')을 전역 검색하여 모든 일치 항목을 배열로 반환
const matches = text.match(pattern);
console.log(matches); // Output: ["at", "at"]
// 정규식을 사용하여 모든 'at' 패턴을 'AT'로 대체
const newText = text.replace(pattern, "AT");
console.log(newText); // Output: "The cAT and the hAT"
match() 메서드를 사용해 "at"이 포함된 모든 문자열을 검색하여 배열로 반환replace() 메서드를 통해 "at"을 "AT"로 대체| 패턴 | 설명 | 예시 (패턴) |
|---|---|---|
. | 임의의 한 문자와 일치 | /c.t/ |
\d | 숫자와 일치 | /\d/ |
\w | 알파벳, 숫자, 언더바(_)와 일치 | /\w/ |
\s | 공백 문자와 일치 | /\s/ |
^ | 문자열의 시작에 일치 | /^The/ |
$ | 문자열의 끝에 일치 | /end$/ |
* | 앞 문자가 0회 이상 반복 | /he*/ |
+ | 앞 문자가 1회 이상 반복 | /he+/ |
{n} | 앞 문자가 정확히 n회 반복 | /a{3}/ |
{n,} | 앞 문자가 최소 n회 반복 | /a{2,}/ |
[] | 대괄호 안의 문자들 중 하나와 일치 | /[aeiou]/ |
() | 그룹으로 묶어 하나의 단위로 사용 가능 | /(abc)/ |
정규식은 외우기보다 참고하며 사용하기
자주 사용하지 않는 패턴은 필요할 때 검색이나 참고 자료를 활용하도록 하자(gpt 👍)