자바스크립트의 정규표현식(Reqular Expression)에서 그룹 지정 후 사용하는 방법에대하여 알아봅니다.

자바스크립트 정규표현식은 그룹 지정이 가능하며 이를 다시 불러와 사용할 수 있습니다. 이때 그룹 지정 방법으로 () 기호를 사용합니다. 예를들어 아래의 정규식에서 그룹핑된 예제를 바주세요.

myRegExp = /(web)/g;

위 코드에거 ()안의 web이 바로 그룹 지정된 문자열입니다. 이 그룹 코드는 $1, $2, $3 ... $9로 호출해 사용하는 것이 가능합니다. 그럼 이 그룹된 정규식을 사용하는 방법에 대하여 알아봅니다.


# 정규표현식에서 그룹지정 사용하는 방법

아래 예제는 특정 텍스트에서 그룹을 지정하고 해당 그룹을 다시 불러와 호출하는 방법입니다. Webisfree를 그룹지정해서 이를 super + 그룹지정값 + site로 바꾸어보겠습니다.

var str = "This is Webisfree!"
var myRegExp = /(Webisfree)/g;
myRegExp.test(str);

str.replace(myRegExp, "super $1 site");
console.log(str);
이제 위 코드를 실행할 경우 그룹값이 $1으로 호출되어 출력값은 우리가 원한 대로 변경됩니다. 아래의 실행결과를 봐주세요.

This is super Webisfree site!

위에 출력된 내용과 같이 $1이 첫번째 그룹으로 변환되어 나타났습니다. 이때 반드시 알아두어야하는 점!이 있습니다.

$1을 그룹값으로 사용하기 위해서는 반드시 정규표현식을 변수에 지정하여 사용해야만 가능합니다. 위에서는 정규표현식을 변수 myRegExp에 담아 사용하였습니다. 이렇게 사용해야만 $1으로 반환된다는 점이 매우 중요합니다.