[JS study] 정규 표현식

재오·2023년 3월 13일
1

JavaScript

목록 보기
20/48
post-thumbnail

정규 표현식(Regular Expression)

정규식은 문자열에서 특정 문자를 대체 또는 발췌할 때 사용한다. 대표적으로는 회원가입이나 로그인 페이지에 전화번호나 이메일을 입력하라고 할 때, 옳지 않은 값을 입력하면 정규표현식에 의해 필터링이 되어 경고화면이 떠지는 화면이다.

const regex = /\d{3}-\d{4}-\d{4}/;
// \d는 숫자를 의미하고, {} 안의 숫자는 갯수를 의미한다.

정규식 메서드

match()

문자열.match(/정규표현식/) -> 문자열에서 정규표현식에 매칭되는 항목들을 문자열로 반환한다.

replace()

문자열.replace(/정규표현식/, "대체문자열") -> 정규표현식에 매칭되는 항목을 대체 문자열로 변환한다.

split()

문자열.split(정규표현식) -> 문자열을 정규표현식에 매칭되는 항목으로 쪼개어 배열로 반환한다.

test()

정규표현식.test(문자열) -> 문자열이 정규표현식과 매칭되면 true, 아니면 false를 반환한다.

exec()

정규표현식.exec(문자열) -> match 메서드와 유사하다. 단 무조건 첫번째 매칭 결과만 반환한다.

정규식 플래그

g: 전역 검색 (모든 검색 결과를 배열로 반환한다.)

const str = "abcabc";
str.match(/a/g); // ["a", "a"]

m: 줄바꿈 검색 (모든 검색 결과를 배열로 반환한다.)

const str = "Hello World and\nPower Hello?\nPower Overwhelming!!";
str.match(/^Power/); //null
// ^문자는 문장 시작점을 의미한다.
str.match(/^Power/gm); // ['Power', 'Power']

i: 대소문자 구분 없음 (모든 검색 결과를 배열로 반환한다.)

const str = 'abcABC';
str.match(/a/gi); // ["a", "A"]

정규식 안에 변수 넣기

첫번째 방법은 RegExp 생성자 함수를 사용하여 변수를 넣는 것이다. 이는 동적으로 정규식을 생성할 때 아주 유용하다.

const str = "hello";
const regex = new RegExp(str);

두번째 방법은 정규식 안에서 변수를 사용하는 것이다. 이는 정규식을 정적으로 생성할 때 아주 유용하다.

const str = "hello";
const regex = new RegExp(`(${str}`);
profile
블로그 이전했습니다

0개의 댓글