정규표현식 객체를 생성하는 생성자이며 리터럴(literal)과 new
연산자를 사용한 생성자 함수 호출 방식을 함께 지원한다.
/expression/flags
리터럴(literal)로 작성할 수 있으며 /
로 시작해 원하는 패턴을 작성하고 /
로 종결한다. 그 이후 flag
가 필요하다면 정의한다.
new RegExp(pattern[, flags])
RegExp
객체의 생성자를 조회한다.
s
플래그가 정규식에 함께 사용되는지 여부를 나타낸다.
정규식 객체의 플래그(flag)로 구성된 문자열을 반환한다.
g
플래그가 정규식에 사용되는지 여부를 나타낸다.
d
플래그가 정규식에 사용되는지 여부를 나타낸다.
i
플래그가 정규식에 사용되는지 여부를 나타낸다.
정규표현식의 다음 일치에 대한 판단을 시작할 인덱스를 지정한다.
m
플래그가 정규식에 사용되는지 여부를 나타낸다.
정규표현식 객체의 소스 텍스트를 포함하는 문자열을 조회할 수 있으며 양쪽의 슬래시와 플래그가 포함되어 있지 않다.
검색이 고정되어 있는지 여부를 나타낸다(lastIndex
프로퍼티로 지정된 인덱스에서 부터 문자열을 검색).
u
플래그가 정규식에 사용되는지 여부를 나타낸다.
v
플래그가 정규식에 사용되는지 여부를 나타낸다.
String.prototype.match()
메소드의 동작을 지정한다.
String.prototype.matchAll()
메소드의 동작을 지정한다.
String.prototype.replace()
및 String.prototype.replaceAll()
메소드의 동작을 지정한다.
String.prototype.search()
메소드의 동작을 지정한다.
String.prototype.split()
메소드의 동작을 지정한다.
지정된 문자열을 대상으로 정규식을 실행한다.
지정된 문자열에 일치하는 문자열이 포함되어 있는지를 검사하고 존재하는 경우에는 true
, 그렇지 않은 경우에는 false
를 반환한다.
정규식을 나타내는 문자열을 반환한다.
객체가 특정 프로퍼티를 가지고 있는지를 블린(boolean
) 값으로 반환한다.
해당 객체가 다른 객체의 프로토타입 체인에 속한 객체인지를 체크한다.
매개 변수의 속성이 열거가능(enumerable)한지 여부를 체크한다.
객체를 나타내는 문자열을 작동하는 지역(locale)의 방식으로 출력이 된다.
객체를 나타내는 문자열을 반환한다.
객체의 원시(primitive) 값을 반환한다.
객체의 생성자 함수를 참조한다.
상속된 [[Prototype]]
참조하거나 설정가능하며 일반적으로 실제 코드상에서는 잘 사용되지 않는다. ECMAScript에서 사용되지 않는 비표준이지만 최신 웹브라우저에서는 비공식적으로 지원하고 있다. 따라서 곧 표준 속성으로 지원될 확률이 높다.
RegExp
객체를 만들 때는 리터럴 표기와 생성자로 2가지 방법을 사용할 수 있다. 리터럴 표기의 매개변수는 양쪽을 슬래시(/
)로 감싸고 따옴표를 사용하지 않는 반면, 생성자 함수의 경우 슬래시 대신 따옴표를 사용한다.
아래의 코드는 모두 동일한 정규 표현식을 생성한다.
/[a-z]/i;
new RegExp(/[a-z]/, 'i'); // 리터럴 표기
new RegExp('a-z', 'i'); // 생성자
문자 | 의미 |
---|---|
\ | 정규 표현식으로 사용되는 특수 문자가 아닌 문자 앞에 사용되는 경우 특별한 의미로 사용되며 문자 그대로 해석되지 않음을 의미한다. 정규 표현식으로 사용되는 특수 문자 앞에 사용되는 경우는 정규표현식의 예약된 특수문자로 해석되지 않고 일반 문자처럼 다루어진다. |
^ | 정규 표현식의 테스트될 문자열의 시작 부분과 대응한다. |
$ | 정규 표현식의 테스트될 문자열의 끝 부분과 대응한다. |
* | 직전 표현식이 0회 이상 연속으로 반복되는 부분과 대응한다. |
+ | 직전 표현식이 1회 이상 연속으로 반복되는 부분과 대응한다. |
? | 이전 표현식이 0 또는 1회 나타나는 부분과 대응한다. |
. | 개행 문자를 제외한 모든 단일 문자와 대응한다. |
(x) | 괄호안의 문자열과 대응하고 그것을 기억한다. |
(?:x) | x에 대응하지만 대응된 것을 기억하지 않는다. |
flag | 설명 |
---|---|
g | 처음 일치에서 중단하지 않고 문자열 전체를 판별한다. |
i | 대소문자를 무시 |
m | 시작 혹은 끝 문자( |
s | . 문자가 줄바꿈을 포함한 모든 문자에 일치한다. |
u | 패턴을 유니코드 코드 포인트 열로 처리한다. |
y | 정규표현식의 lastIndex 속성에 명시된 인덱스에서만 판별하고 이전/이후 인덱스에서 판별을 시도하지 않는다. |