정규표현식은 두가지 표기 방법이 있습니다. 하나는 리터럴 표기에 의한 방법으로
var pattern = /abcdf/;


두번째는 RegExp 객체를 사용하는 방법입니다.
var pattern = RegExp('abcdf');


보는 것은 매우 다를 수 있지만 둘 다 정규표현식에 필요한 인스턴스를 만들어 사용할 수 있습니다. 사실 정규표현식은 다루어야 할 부분이 매우 많습니다. 하지만 매우 복잡한 코드를 한줄로 줄일 수 있는 강력한 기능이 있기 때문에 매우 중요한 부분이라 할 수 있습니다. 그럼 아래부터는 예제와 함께 알아보겠습니다.


# 문자에서 숫자만 x 기호로 바꾸어 감추는 예제



<script type="text/javascript">
var test = "123abc";
var pattern = /[0-9]+/gi;
test = test.replace(pattern,'-');
console.log(test);
</script>


간단한 예제입니다. 위에서 선언된 변수 test를 pattern 변수에 저장된 규칙에 따라 정규표현식을 사용해 변경하려합니다. 먼저 pattern을 보시면 /[0-9]+/gi 라는 다소 복잡한 문자들로 나타납니다. 정규표현식이 어려워 보이는 이유는 이런 용어와 연산자들때문에 다소 복잡한 형태를 가진다는 점입니다. 하나씩 알아보자면...

먼저 두개의 슬러쉬(/ 내용 /)는 먼저 언급했지만 정규표현식 매칭을 통해 찾아낼 패턴을 정의합니다. 뒤에 gi라는 문자가 있는데 이는 정규표현식 플래그로 아래와 같이 사용됩니다.


g : 모든 문자열에서 동일 패턴을 모두 변경할 수 있음. g가 선언되지 않으면 맨 처음 나타난 패턴만 매치시킴
i : 대소문자를 구분하지 않는 것을 의미함. 즉, abc, Abc, abC등을 모두 같은 패턴으로 볼 수 있게함
m : 여러 줄로 구성된 문자열(예를 들어 textarea를 통해 입력된 문자)에서 매치가 가능하게 함