2010-03-18 4 views
2

이유는 무엇입니까 JS 다음 식을 다음 문자열에이상한 자바 스크립트 정규식은 역 참조 동작 교체

"test1 foo bar test2".replace(/foo.bar/, "$'") 

결과는?

"test1 test2 test2" 

는 대체 문자열에서 $'는 경기 후 모든 를 포함한 제어 코드의 일종이다 ???

이 동작은 대부분 나를 망쳐 놨습니다. 아무도 이것을 설명 할 수 있습니까?

"test1 foo bar test2".replace(/foo.bar/, "$$'") 

$' 삽입 :

덕분에 많은이 PS-

내가 매개 변수를 대체 정규식에서

답변

6

을 테스트 한 모든 브라우저에서의 경우, 당신은 $을 탈출해야합니다 일치하는 하위 문자열 다음에 나오는 문자열 부분.
documentation을 참조하십시오.

+0

오른쪽, 차가움. 나는 달러 표시 ($ 0 또는 $ 1와 같은 경우)를 피할 필요가 있음을 알았지 만, $ 표시가 무엇인지 알지 못했습니다. 링크 주셔서 감사합니다. – arshaw

관련 문제