일반 표현식 인스턴스 만들기

Flash Player 9 이상, Adobe AIR 1.0 이상

두 가지 방법을 사용하여 일반 표현식 인스턴스를 만들 수 있는데, 첫 번째 방법은 슬래시 문자( / )를 사용하여 일반 표현식을 나타내고 다른 방법은 new 생성자를 사용합니다. 예를 들어, 다음 일반 표현식은 동일합니다.

var pattern1:RegExp = /bob/i; 
var pattern2:RegExp = new RegExp("bob", "i");

슬래시는 따옴표를 사용하여 문자열 리터럴을 나타내는 것과 같은 방식으로 일반 표현식 리터럴을 나타냅니다. 슬래시 내의 일반 표현식 부분은 패턴을 정의합니다. 또한 일반 표현식에서 마지막 슬래시 뒤에 플래그 를 포함할 수도 있습니다. 이러한 플래그는 일반 표현식의 일부로 간주되지만 패턴과 별개입니다.

new 생성자를 사용할 때는 두 문자열을 사용하여 일반 표현식을 정의하는데, 다음 예제와 같이 첫 번째 문자열은 패턴을 정의하고 두 번째 문자열은 플래그를 정의합니다.

var pattern2:RegExp = new RegExp("bob", "i");

슬래시 기호를 사용하여 정의된 일반 표현식 내에 다시 슬래시를 포함하는 경우에는 슬래시 앞에 백슬래시( \ ) 이스케이프 문자를 추가해야 합니다. 예를 들어, 다음 일반 표현식은 1/2 패턴과 일치하는 문자열을 찾습니다.

var pattern:RegExp = /1\/2/;

new 생성자를 사용하여 정의된 일반 표현식 내에 따옴표를 포함하려면 문자열 리터럴을 정의할 때처럼 따옴표 앞에 백슬래시( \ ) 이스케이프 문자를 추가해야 합니다. 예를 들어, 다음 일반 표현식은 eat at "joe's" 패턴과 일치하는 문자열을 찾습니다.

var pattern1:RegExp = new RegExp("eat at \"joe's\"", ""); 
var pattern2:RegExp = new RegExp('eat at "joe\'s"', "");

슬래시 기호를 사용하여 정의된 일반 표현식에서 백슬래시 이스케이프 문자를 따옴표와 함께 사용하면 안 됩니다. 마찬가지로 new 생성자를 사용하여 정의된 일반 표현식에서 이스케이프 문자를 슬래시와 함께 사용하면 안 됩니다. 다음 일반 표현식은 동일하며 1/2 "joe's" 패턴을 정의합니다.

var pattern1:RegExp = /1\/2 "joe's"/; 
var pattern2:RegExp = new RegExp("1/2 \"joe's\"", ""); 
var pattern3:RegExp = new RegExp('1/2 "joe\'s"', '');

또한 new 생성자를 사용하여 정의된 일반 표현식에서 임의의 숫자와 일치하는 \d 와 같이 백슬래시( \ ) 문자로 시작하는 메타시퀀스를 사용하려면 백슬래시 문자를 두 번 입력합니다.

var pattern:RegExp = new RegExp("\\d+", ""); // matches one or more digits

이 경우 RegExp() 생성자 메서드의 첫 번째 매개 변수가 문자열이고 문자열 리터럴에서 단일 백슬래시 문자를 인식하려면 백슬래시 문자를 두 번 입력해야 하므로 결과적으로 백슬래시 문자를 두 번 입력해야 합니다.

다음에 나오는 단원에서는 일반 표현식 패턴을 정의하는 구문에 대해 설명합니다.

플래그에 대한 자세한 내용은 플래그 및 속성 을 참조하십시오.