대체
업데이트: 2007년 11월
바꾸기 패턴 내에서만 대체를 사용할 수 있습니다. 정규식에서 이와 유사한 기능을 사용하려면 \1 같은 역참조를 사용합니다. 역참조에 대한 자세한 내용은 역참조 및 역참조 구문을 참조하십시오.
문자 이스케이프 및 대체는 바꾸기 패턴에서만 인식되는 특수한 구문입니다. 다음 단원에서 설명하는 모든 구문은 정규식에서만 사용할 수 있으며, 바꾸기 패턴에서 사용하면 구문을 인식할 수 없습니다. 예를 들어, 바꾸기 패턴 a*${txt}b는 txt 캡처 그룹과 일치하는 부분 문자열이 뒤에 오고(있을 경우) 그 뒤에 문자열 "b"가 오는 문자열 "a*"를 삽입합니다. 바꾸기 패턴에서 * 문자는 메타문자로 인식되지 않습니다. 마찬가지로 $ 패턴은 정규식에서 일치 패턴으로 인식되지 않습니다. 정규식에서 $는 문자열의 끝을 나타냅니다.
다음 표에는 명명되고 번호가 매겨진 바꾸기 패턴을 정의하는 방법이 나와 있습니다.
문자 |
설명 |
---|---|
$number |
그룹 번호 number(10진수)와 일치하는 마지막 부분 문자열을 대체합니다. |
${name} |
(?<name>) 그룹과 일치하는 마지막 문자열을 대체합니다. |
$$ |
하나의 "$" 리터럴을 대체합니다. |
$& |
일치하는 전체 문자열의 복사본을 대체합니다. |
$` |
일치하는 문자열 앞에 있는 입력 문자열의 모든 텍스트를 대체합니다. |
$' |
일치하는 문자열 뒤에 있는 입력 문자열의 모든 텍스트를 대체합니다. |
$+ |
캡처된 마지막 그룹을 대체합니다. |
$_ |
전체 입력 문자열을 대체합니다. |