Matcher.AppendReplacement 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| 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
取代字串
傳回
這個匹配器
- 屬性
例外狀況
如果沒有成功配對。
備註
實作非終端的附加與替換步驟。
此方法執行以下動作:
<進攻線>
<李>
它從輸入序列讀取字元,從附加位置開始,並將其附加到給定的字串緩衝區。 讀取前一場比賽前的最後一個字元後,也就是索引#start()與 nbsp 字元,該字元即停止;- 1
</李>
<李>
它會將給定的替換字串附加到字串緩衝區。
</李>
<李>
它將此匹配器的附加位置設為最後匹配字元的索引,加上一,也就是 。#end()
</李>
</ol>
替換字串可能包含對前一匹配中擷取的子序列的參考:每次出現 ${名稱} 或 $g 的出現,都會被對應 #group(String) group(name) 的 or #group(int) group(g) 評估結果所替換。 對於 $g,第一個 $ 數字總是被視為群指稱的一部分。 若後續數字能構成法律團體參考,則會納入 g。 只有數字「0」到「9」被視為群參考的潛在組成部分。 例如,如果第二組與字串 "foo"匹配,則傳遞替換字串 "$2bar" 會導致 "foobar" 附加到字串緩衝區。 在替換字串中,可以將美元符號$()作為字面值加入,方法是在前加上斜線(\$)。
請注意,替換字串中的反斜線(\)和美元符號$()可能導致結果與直接視為替換字串時不同。 美元符號可視為上述捕捉子序列的參考,反斜線則用於替換字串中的字元逃逸。
此方法設計用於與 和 #find() find 方法的#appendTail(StringBuffer) appendTail迴圈中。 以下程式碼,例如, one dog two dogs in the yard 寫入標準輸出串流:
<引用>
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());
</區塊引用>
Java 文件 java.util.regex.Matcher.appendReplacement(java.lang.StringBuffer, java.lang.String)。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
適用於
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
取代字串
傳回
這個匹配器
- 屬性
備註
實作非終端的附加與替換步驟。
此方法執行以下動作:
<進攻線>
<李>
它從輸入序列中讀取字元,從附加位置開始,並將其附加到給定的字串建構器中。 讀取前一場比賽前的最後一個字元後,也就是索引#start()與 nbsp 字元,該字元即停止;- 1
</李>
<李>
它會將給定的替換字串附加到字串建構器上。
</李>
<李>
它將此匹配器的附加位置設為最後匹配字元的索引,加上一,也就是 。#end()
</李>
</ol>
替換字串可能包含對上一次匹配中擷取的子序列的參考:每次出現 $g 都會被計算 #group(int) group(g) 的結果所取代。 在 之後 $ 的第一個數字總是被視為群組參考的一部分。 若後續數字能構成法律團體參考,則會納入 g。 只有數字「0」到「9」被視為群參考的潛在組成部分。 例如,如果第二組與字串 "foo"相符,則傳遞替換字串 "$2bar" 會導致 "foobar" 附加到字串建構器上。 在替換字串中,可以將美元符號$()作為字面值加入,方法是在前加上斜線(\$)。
請注意,替換字串中的反斜線(\)和美元符號$()可能導致結果與直接視為替換字串時不同。 美元符號可視為上述捕捉子序列的參考,反斜線則用於替換字串中的字元逃逸。
此方法設計用於與 和 #find() find 方法的#appendTail(StringBuilder) appendTail迴圈中。 以下程式碼,例如, one dog two dogs in the yard 寫入標準輸出串流:
<引用>
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());
</區塊引用>
新增9。
Java 文件 java.util.regex.Matcher.appendReplacement(java.lang.StringBuilder, java.lang.String)。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。