자바스크립트 '\\$&' 의미
조회수 709회
안녕하세요? 자바스크립트의 정규식을 공부하고 있었는데, 이해가 안되는 부분이 생겨 질문을 올립니다.
제가 잘 모르겠는 코드는 다음과 같습니다.
function test(s){
return s.replace(/[\\^$.*+?()[\]{}|=!<>:-]/g, '\\$&');
}
정규식의 특수문자를 역슬래쉬로 이스케이프한 문자열을 반환하는 함수라고 하는데, 두 번째 문자열이 무엇인지 궁금합니다. 리플레이스멘트에 정규식이 들어간다면 역참조를 이용할 수 있을 것 같지만, '\\$&'는 그냥 문자열입니다. '\\$&'가 무슨 뜻인가요?
수정: 그냥 문자열이 아닙니다. 콘솔에서 실행한 결과에서도 앞 정규식에 일치하는 문자열을 이스케이프한 것으로 나옵니다.
코드 출처: 자바스크립트를 말하다
댓글 입력