Matcher.AppendReplacement Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
| AppendReplacement(StringBuffer, String) |
Menerapkan langkah tambahan dan penggantian non-terminal. |
| AppendReplacement(StringBuilder, String) |
Menerapkan langkah tambahan dan penggantian non-terminal. |
AppendReplacement(StringBuffer, String)
Menerapkan langkah tambahan dan penggantian non-terminal.
[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
Parameter
- sb
- StringBuffer
Buffer string target
- replacement
- String
String pengganti
Mengembalikan
Pencocokan ini
- Atribut
Pengecualian
jika tidak ada kecocokan yang berhasil telah dibuat.
Keterangan
Menerapkan langkah tambahan dan penggantian non-terminal.
Metode ini melakukan tindakan berikut:
<Ol>
<Li>
Ini membaca karakter dari urutan input, mulai dari posisi tambahan, dan menambahkannya ke buffer string yang diberikan. Ini berhenti setelah membaca karakter terakhir sebelum kecocokan sebelumnya, yaitu karakter di indeks #start() - 1.
</Li>
<Li>
Ini menambahkan string pengganti yang diberikan ke buffer string.
</Li>
<Li>
Ini mengatur posisi tambahan pencocokan ini ke indeks karakter terakhir yang cocok, ditambah satu, yaitu, ke #end().
</Li>
</Ol>
String pengganti mungkin berisi referensi ke sub-urutan yang diambil selama kecocokan sebelumnya: Setiap kemunculan ${nama} atau$ g akan diganti dengan hasil mengevaluasi yang sesuai #group(String) group(name) atau #group(int) group(g) masing-masing. Untuk $g, angka pertama setelah $ selalu diperlakukan sebagai bagian dari referensi grup. Angka berikutnya dimasukkan ke dalam g jika mereka akan membentuk referensi grup hukum. Hanya angka '0' hingga '9' yang dianggap sebagai komponen potensial dari referensi grup. Jika grup kedua cocok dengan string "foo", misalnya, maka meneruskan string "$2bar" pengganti akan menyebabkan "foobar" ditambahkan ke buffer string. Tanda dolar ($) dapat disertakan sebagai harfiah dalam string pengganti dengan mendahuluinya dengan garis miring terbalik (\$).
Perhatikan bahwa garis miring terbalik (\) dan tanda dolar ($) dalam string pengganti dapat menyebabkan hasilnya berbeda dari jika diperlakukan sebagai string pengganti harfiah. Tanda dolar dapat diperlakukan sebagai referensi untuk mengambil suburut seperti yang dijelaskan di atas, dan garis miring terbalik digunakan untuk menghindari karakter harfiah dalam string pengganti.
Metode ini dimaksudkan untuk digunakan dalam perulangan bersama dengan #appendTail(StringBuffer) appendTail metode dan #find() find . Kode berikut, misalnya, menulis one dog two dogs in the yard ke aliran output standar:
<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>
Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.
Berlaku untuk
AppendReplacement(StringBuilder, String)
Menerapkan langkah tambahan dan penggantian non-terminal.
[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
Parameter
Penyusun string target
- replacement
- String
String pengganti
Mengembalikan
Pencocokan ini
- Atribut
Keterangan
Menerapkan langkah tambahan dan penggantian non-terminal.
Metode ini melakukan tindakan berikut:
<Ol>
<Li>
Ini membaca karakter dari urutan input, mulai dari posisi tambahan, dan menambahkannya ke pembangun string yang diberikan. Ini berhenti setelah membaca karakter terakhir sebelum kecocokan sebelumnya, yaitu karakter di indeks #start() - 1.
</Li>
<Li>
Ini menambahkan string pengganti yang diberikan ke pembangun string.
</Li>
<Li>
Ini mengatur posisi tambahan pencocokan ini ke indeks karakter terakhir yang cocok, ditambah satu, yaitu, ke #end().
</Li>
</Ol>
String pengganti mungkin berisi referensi ke sub-urutan yang diambil selama kecocokan sebelumnya: Setiap kemunculan g akan digantikan oleh hasil evaluasi#group(int) group( g.) $ Angka pertama setelah $ selalu diperlakukan sebagai bagian dari referensi grup. Angka berikutnya dimasukkan ke dalam g jika mereka akan membentuk referensi grup hukum. Hanya angka '0' hingga '9' yang dianggap sebagai komponen potensial dari referensi grup. Jika grup kedua cocok dengan string "foo", misalnya, meneruskan string "$2bar" pengganti akan menyebabkan "foobar" ditambahkan ke pembangun string. Tanda dolar ($) dapat disertakan sebagai harfiah dalam string pengganti dengan mendahuluinya dengan garis miring terbalik (\$).
Perhatikan bahwa garis miring terbalik (\) dan tanda dolar ($) dalam string pengganti dapat menyebabkan hasilnya berbeda dari jika diperlakukan sebagai string pengganti harfiah. Tanda dolar dapat diperlakukan sebagai referensi untuk mengambil suburut seperti yang dijelaskan di atas, dan garis miring terbalik digunakan untuk menghindari karakter harfiah dalam string pengganti.
Metode ini dimaksudkan untuk digunakan dalam perulangan bersama dengan #appendTail(StringBuilder) appendTail metode dan #find() find . Kode berikut, misalnya, menulis one dog two dogs in the yard ke aliran output standar:
<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>
Ditambahkan dalam 9.
Bagian halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Proyek Sumber Terbuka Android dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Atribusi Creative Commons 2.5.