답변:
IntelliJ는 대체 역 참조를 $1
위해 사용 합니다.
IntelliJ의 도움에서 :
정규 표현식 및 구문에 대한 자세한 정보는 java.util.regex 문서를 참조하십시오. 역 참조는 \ n 형식이 아니라 $ n이어야합니다.
'+ var +'
에 ${var}
일부 서식 문자열과 인 IntelliJ는 교체를 완료하지 왜 알아낼 수 없었다. 알고 보니 $
필요는 교체에서 탈출합니다.
즉, 역 참조 를 대체 할 때는 $1
to $n
를 사용해야 합니다. 구문은 검색 내 역 참조 전용입니다.\1
IntelliJ 2016에서 인앱 설명서가 잘못되었습니다. 전체 문서에서 더 나은 인용문은 다음과 같습니다.
현재 정규 표현식 외부의 어딘가에 일치하는 부분 문자열을 참조해야하는 경우 (예 : 다른 정규 표현식의 대체 문자열) 달러 기호 ($ num, 여기서 num = 1..n)를 사용하여 검색 할 수 있습니다.
IntelliJ IDEA / 참조 / 정규식 구문 참조
하위 표현식과 일치하고 일치를 기억합니다. 동일한 정규식 내에서 일치하는 하위 문자열을 사용해야하는 경우 역 참조 (\ num, 여기서 num = 1..n)를 사용하여 하위 문자열을 검색 할 수 있습니다. 현재 정규 표현식 외부의 어딘가에 일치하는 부분 문자열을 참조해야하는 경우 (예 : 대체 필드의 다른 정규식) 달러 기호 ($ num, 여기서 num = 1..n)를 사용하여 검색 할 수 있습니다. 하위 표현식에 괄호 문자를 포함해야하는 경우 "("또는 ")"를 사용하십시오.
(foo)
교체 :$1bar