"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > JavaScript에서 정규식 특수 문자를 어떻게 이스케이프합니까?

JavaScript에서 정규식 특수 문자를 어떻게 이스케이프합니까?

2024년 11월 15일에 게시됨
검색:836

How do you escape regular expression special characters in JavaScript?

JavaScript에서 정규식 특수 문자를 이스케이프하는 방법

정규식 특수 문자를 이스케이프하는 것은 패턴 일치의 정확성을 달성하는 데 중요합니다. JavaScript에서 이를 수행하려면 \ 문자를 활용하여 정규 표현식 내에서 특별한 의미를 갖는 문자 앞에 접두사를 붙일 수 있습니다.

예를 들어 리터럴 [과 일치시키려면 \[로 이스케이프해야 합니다. . 하지만 이 과정을 자동화하려면 함수를 사용하는 것이 편리합니다.

function escapeRegExp(text) {
  return text.replace(/[-[\]{}()* ?.,\\^$|#\s]/g, '\\$&');
}

이 함수에서 바꾸기 메소드는 특수 문자를 식별하고 이스케이프된 문자로 바꿉니다. 업데이트된 문자 버전에는 \가 접두사로 붙으므로 정규식 엔진이 이를 특수 토큰이 아닌 리터럴 문자로 처리합니다.

이 함수의 적용을 설명하려면 다음 코드를 고려하세요.

const escapedString = escapeRegExp("[Munees]waran");

escapedString은 이제 \[Munees\]waran 값을 보유합니다. 여기서 대괄호 [ 및 ]는 정규식을 방지하기 위해 이스케이프됩니다. 엔진은 이를 범위 구분 기호로 해석하지 않습니다.

원래 RegExp.escape라는 보다 구체적인 함수를 사용할 수 있었지만 제한된 이스케이프 기능으로 인해 더 이상 사용되지 않습니다. 대신, 포괄적인 정규식 이스케이프를 위해서는 위에서 언급한 escapeRegExp 함수를 활용하는 것이 좋습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3