Matcher.AppendReplacement 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
AppendReplacement(StringBuffer, String) |
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다. |
AppendReplacement(StringBuilder, String) |
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다. |
AppendReplacement(StringBuffer, String)
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다.
[Android.Runtime.Register("appendReplacement", "(Ljava/lang/StringBuffer;Ljava/lang/String;)Ljava/util/regex/Matcher;", "")]
public Java.Util.Regex.Matcher AppendReplacement (Java.Lang.StringBuffer sb, string replacement);
[<Android.Runtime.Register("appendReplacement", "(Ljava/lang/StringBuffer;Ljava/lang/String;)Ljava/util/regex/Matcher;", "")>]
member this.AppendReplacement : Java.Lang.StringBuffer * string -> Java.Util.Regex.Matcher
매개 변수
- sb
- StringBuffer
대상 문자열 버퍼
- replacement
- String
대체 문자열
반환
이 선택기
- 특성
예외
일치하는 항목이 없으면
설명
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다.
이 메서드는 다음 작업을 수행합니다.
<ol>
<리>
추가 위치에서 시작하여 입력 시퀀스에서 문자를 읽고 지정된 문자열 버퍼에 추가합니다. 이전 일치 항목 앞의 마지막 문자, 즉 인덱 #start()
스 -
의 문자를 읽은 후 중지됩니다. 1
.
</리>
<리>
지정된 대체 문자열을 문자열 버퍼에 추가합니다.
</리>
<리>
이 선택기의 추가 위치를 일치하는 마지막 문자의 인덱스 및 일치하는 문자의 인덱스(즉, 1)로 #end()
설정합니다.
</리>
</ol>
대체 문자열에는 이전 일치 시 캡처된 하위 시퀀스에 대한 참조가 포함될 수 있습니다. 이름 또는 $
g의}
${
각 발생은 해당 #group(String) group(name)
또는 #group(int) group(g)
각각을 평가한 결과로 바뀝니다. $
예를 들어, 첫 번째 숫자는 $
항상 그룹 참조의 일부로 처리됩니다. 후속 숫자는 법적 그룹 참조를 형성하는 경우 g로 통합됩니다. 숫자 '0'에서 '9'만 그룹 참조의 잠재적 구성 요소로 간주됩니다. 예를 들어 두 번째 그룹이 문자열"foo"
과 일치하는 경우 대체 문자열을 전달하면 "foobar"
문자열 "$2bar"
버퍼에 추가됩니다. 달러 기호()는 백슬래시($
\$
)로 선행하여 대체 문자열에 리터럴로 포함될 수 있습니다.
대체 문자열의 백슬라이시(\
) 및 달러 기호($
)는 리터럴 대체 문자열로 처리되는 경우와 결과가 다를 수 있습니다. 달러 기호는 위에서 설명한 대로 캡처된 하위 시퀀스에 대한 참조로 처리될 수 있으며, 백슬라이시는 대체 문자열에서 리터럴 문자를 이스케이프하는 데 사용됩니다.
이 메서드는 루프에서 및 #find() find
메서드와 #appendTail(StringBuffer) appendTail
함께 사용됩니다. 예를 들어 다음 코드는 표준 출력 스트림에 씁니다 one dog two dogs in the yard
.
<blockquote>
Pattern p = Pattern.compile("cat");
Matcher m = p.matcher("one cat two cats in the yard");
StringBuffer sb = new StringBuffer();
while (m.find()) {
m.appendReplacement(sb, "dog");
}
m.appendTail(sb);
System.out.println(sb.toString());
</blockquote>
에 대한 java.util.regex.Matcher.appendReplacement(java.lang.StringBuffer, java.lang.String)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.
적용 대상
AppendReplacement(StringBuilder, String)
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다.
[Android.Runtime.Register("appendReplacement", "(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;", "", ApiSince=34)]
public Java.Util.Regex.Matcher AppendReplacement (Java.Lang.StringBuilder sb, string replacement);
[<Android.Runtime.Register("appendReplacement", "(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;", "", ApiSince=34)>]
member this.AppendReplacement : Java.Lang.StringBuilder * string -> Java.Util.Regex.Matcher
매개 변수
대상 문자열 작성기
- replacement
- String
대체 문자열
반환
이 선택기
- 특성
설명
터미널이 아닌 추가 및 바꾸기 단계를 구현합니다.
이 메서드는 다음 작업을 수행합니다.
<ol>
<리>
추가 위치에서 시작하여 입력 시퀀스에서 문자를 읽고 지정된 문자열 작성기에 추가합니다. 이전 일치 항목 앞의 마지막 문자, 즉 인덱 #start()
스 -
의 문자를 읽은 후 중지됩니다. 1
.
</리>
<리>
지정된 대체 문자열을 문자열 작성기에 추가합니다.
</리>
<리>
이 선택기의 추가 위치를 일치하는 마지막 문자의 인덱스 및 일치하는 문자의 인덱스(즉, 1)로 #end()
설정합니다.
</리>
</ol>
대체 문자열은 이전 일치 시 캡처된 하위 시퀀스에 대한 참조를 포함할 수 있습니다. g의 $
각 발생은 g)
평가 #group(int) group
(
결과로 바뀝니다. 이후의 $
첫 번째 숫자는 항상 그룹 참조의 일부로 처리됩니다. 후속 숫자는 법적 그룹 참조를 형성하는 경우 g로 통합됩니다. 숫자 '0'에서 '9'만 그룹 참조의 잠재적 구성 요소로 간주됩니다. 예를 들어 두 번째 그룹이 문자열"foo"
과 일치하는 경우 대체 문자열을 전달하면 "foobar"
문자열 "$2bar"
작성기에서 추가됩니다. 달러 기호()는 백슬래시($
\$
)로 선행하여 대체 문자열에 리터럴로 포함될 수 있습니다.
대체 문자열의 백슬라이시(\
) 및 달러 기호($
)는 리터럴 대체 문자열로 처리되는 경우와 결과가 다를 수 있습니다. 달러 기호는 위에서 설명한 대로 캡처된 하위 시퀀스에 대한 참조로 처리될 수 있으며, 백슬라이시는 대체 문자열에서 리터럴 문자를 이스케이프하는 데 사용됩니다.
이 메서드는 루프에서 및 #find() find
메서드와 #appendTail(StringBuilder) appendTail
함께 사용됩니다. 예를 들어 다음 코드는 표준 출력 스트림에 씁니다 one dog two dogs in the yard
.
<blockquote>
Pattern p = Pattern.compile("cat");
Matcher m = p.matcher("one cat two cats in the yard");
StringBuilder sb = new StringBuilder();
while (m.find()) {
m.appendReplacement(sb, "dog");
}
m.appendTail(sb);
System.out.println(sb.toString());
</blockquote>
9에 추가되었습니다.
에 대한 java.util.regex.Matcher.appendReplacement(java.lang.StringBuilder, java.lang.String)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.