..

Search

64) RegExp 객체

64) RegExp 객체

RegExp 객체


RegExp 객체

RegExp 객체는 정규 표현식을 구현한 자바스크립트 표준 내장 객체입니다.

 

RegExp 객체를 생성하는 문법은 다음과 같습니다.

문법

new RegExp(검색패턴[, 플래그]);

 

1. 검색 패턴을 나타내는 정규 표현식은 따옴표나 슬래시(/)로 감싸야 합니다.

2. 기본 검색 설정을 변경할 수 있는 플래그는 필요할 때만 전달할 수 있습니다.


RegExp.prototype 메소드

모든 RegExp 인스턴스는 RegExp.prototype으로부터 메소드와 프로퍼티를 상속받습니다.

이렇게 상속받은 RegExp.prototype 메소드를 사용하여 정규 표현식을 표현할 수 있습니다.

 

1. RegExp.prototype.exec()

2. RegExp.prototype.test()


exec() 메소드

exec() 메소드는 인수로 전달된 문자열에서 특정 패턴을 검색하여, 패턴과 일치하는 문자열을 반환합니다.

만약에 패턴과 일치하는 문자열이 없으면 null을 반환합니다.

예제

var targetStr = "abbcdefabgh";

var firstResult = /ab+/.exec(targetStr);    // 패턴과 일치하는 문자열이 여러 개인 경우

var secondResult = /abbb+/.exec(targetStr); // 패턴과 일치하는 문자열이 하나도 없는 경우

firstResult;  // abb -> 가장 맨 처음으로 일치하는 문자열이 반환됨.

secondResult; // null

코딩연습 ▶


test() 메소드

test() 메소드는 인수로 전달된 문자열에 특정 패턴과 일치하는 문자열이 있는지를 검색합니다.

만약에 패턴과 일치하는 문자열이 있으면 true를, 없으면 false를 반환합니다.

예제

var targetStr = "abbcdefabgh";

var firstResult = /ab+/.test(targetStr);    // 패턴과 일치하는 문자열이 여러 개인 경우

var secondResult = /abbb+/.test(targetStr); // 패턴과 일치하는 문자열이 하나도 없는 경우

firstResult;  // true

secondResult; // false

코딩연습 ▶


자바스크립트 RegExp.prototype 메소드

메소드 설명
exec() 인수로 전달된 문자열에서 특정 패턴을 검색하여, 패턴과 일치하는 문자열을 반환함.

test()

인수로 전달된 문자열에 특정 패턴과 일치하는 문자열이 있는지를 검색하여, 그 결과를 불리언 값으로 반환함.
toString() RegExp 객체의 정규 표현식과 같은 의미를 가지는 정규 표현식 리터럴 문자열을 반환함.

RegExp.prototype 프로퍼티

자바스크립트는 정규 표현식에서 사용하는 다양한 정보를 RegExp.prototype 프로퍼티를 이용해 제공하고 있습니다.

 

1.  RegExp.prototype.global

2.  RegExp.prototype.ignoreCase

3.  RegExp.prototype.multiline

4.  RegExp.prototype.source


자바스크립트 RegExp.prototype 프로퍼티

프로퍼티 설명
global 검색 패턴을 비교할 때 일치하는 모든 부분을 선택하도록 설정하는 플래그인 'g'를 가리킴.
ignoreCase 검색 패턴을 비교할 때 대소문자를 구분하지 않도록 설정하는 플래그인 'i'를 가리킴.
multiline 검색 패턴을 비교할 때 여러 줄의 입력 문자열을 그 상태 그대로 여러 줄로 비교하도록 설정하는 플래그인 'm'을 가리킴.
source 검색 패턴이 포함하고 있는 문자열을 가리킴.

연습문제