Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Membandingkan string dengan pola.
Penting
Operator Like saat ini tidak didukung dalam proyek .NET Core dan .NET Standard.
Sintaksis
result = string Like pattern
Bagian
result
Dibutuhkan. Variabel apa pun Boolean . Hasilnya adalah nilai yang Boolean menunjukkan apakah memenuhi pattern.string
string
Dibutuhkan. Ekspresi apa pun String .
pattern
Dibutuhkan. Ekspresi apa pun String yang sesuai dengan konvensi pencocokan pola yang dijelaskan dalam "Komentar."
Komentar
Jika nilai dalam string memenuhi pola yang terkandung dalam pattern, result adalah True. Jika string tidak memenuhi pola, result adalah False. Jika keduanya string dan pattern merupakan string kosong, hasilnya adalah True.
Metode Perbandingan
Perilaku Like operator bergantung pada Pernyataan Perbandingan Opsi. Metode perbandingan string default untuk setiap file sumber adalah Option Compare Binary.
Opsi Pola
Pencocokan pola bawaan menyediakan alat serbaguna untuk perbandingan string. Fitur pencocokan pola memungkinkan Anda mencocokkan setiap karakter dengan string karakter tertentu, karakter kartubebas, daftar karakter, atau rentang karakter. Tabel berikut ini memperlihatkan karakter yang diizinkan masuk pattern dan apa yang cocok dengannya.
Karakter dalam pattern |
Kecocokan dalam string |
|---|---|
? |
Setiap karakter tunggal |
* |
Nol karakter atau lebih |
# |
Digit tunggal apa pun (0–9) |
[charlist] |
Setiap karakter tunggal di charlist |
[!charlist] |
Karakter tunggal apa pun yang tidak ada di charlist |
Daftar Karakter
Sekelompok atau beberapa karakter (charlist) yang diapit dalam tanda kurung siku ([ ]) dapat digunakan untuk mencocokkan satu karakter string dan dapat menyertakan hampir semua kode karakter, termasuk digit.
Tanda seru (!) di awal charlist berarti bahwa kecocokan dibuat jika ada karakter kecuali karakter dalam charlist ditemukan di string. Ketika digunakan di luar tanda kurung, tanda seru cocok dengan dirinya sendiri.
Karakter Khusus
Untuk mencocokkan karakter khusus tanda kurung kiri ([), tanda tanya (?), tanda angka (#), dan tanda bintang (*), sertakan dalam tanda kurung. Kurung siku kanan (]) tidak dapat digunakan dalam grup untuk mencocokkan dirinya sendiri, tetapi dapat digunakan di luar grup sebagai karakter individual.
Urutan [] karakter dianggap sebagai string panjang nol (""). Namun, itu tidak dapat menjadi bagian dari daftar karakter yang diapit dalam tanda kurung siku. Jika Anda ingin memeriksa apakah posisi di string berisi salah satu dari sekelompok karakter atau tidak ada karakter sama sekali, Anda dapat menggunakan Like dua kali. Misalnya, lihat Cara: Mencocokkan String dengan Pola.
Rentang Karakter
Dengan menggunakan tanda hubung (–) untuk memisahkan batas bawah dan atas rentang, charlist dapat menentukan rentang karakter. Misalnya, [A–Z] menghasilkan kecocokan jika posisi karakter yang sesuai di berisi karakter apa pun dalam string rentang A–Z, dan [!H–L] menghasilkan kecocokan jika posisi karakter yang sesuai berisi karakter apa pun di luar rentang H–L.
Saat Anda menentukan rentang karakter, karakter tersebut harus muncul dalam urutan urutan naik, yaitu, dari terendah hingga tertinggi. Dengan demikian, [A–Z] adalah pola yang valid, tetapi [Z–A] tidak.
Beberapa Rentang Karakter
Untuk menentukan beberapa rentang untuk posisi karakter yang sama, letakkan dalam tanda kurung yang sama tanpa pemisah. Misalnya, [A–CX–Z] menghasilkan kecocokan jika posisi karakter yang sesuai berisi karakter apa pun dalam string rentang A–C atau rentang X-Z.
Penggunaan Tanda Hubung
Tanda hubung (–) dapat muncul baik di awal (setelah tanda seru, jika ada) atau di akhir charlist untuk mencocokkan dirinya sendiri. Di lokasi lain, tanda hubung mengidentifikasi rentang karakter yang dibatasi oleh karakter di salah satu sisi tanda hubung.
Urutan Kolase
Arti rentang yang ditentukan tergantung pada pengurutan karakter pada waktu proses, seperti yang ditentukan oleh Option Compare dan pengaturan lokal sistem yang dijalankan kode. Dengan Option Compare Binary, rentang [A–E] cocok Adengan , , B, C, Ddan E. Dengan Option Compare Text, [A–E] cocok Adengan , a, À, à, B, , Cb, c, D, d, , Edan e. Rentang tidak cocok Ê atau ê karena karakter beraksen berkolase setelah karakter yang tidak beraksen dalam urutan pengurutan.
Karakter Grafik
Dalam beberapa bahasa, ada karakter alfabet yang mewakili dua karakter terpisah. Misalnya, beberapa bahasa menggunakan karakter æ untuk mewakili karakter a dan e saat muncul bersama. Operator Like mengenali bahwa karakter grafik tunggal dan dua karakter individual setara.
Saat bahasa yang menggunakan karakter grafik ditentukan dalam pengaturan lokal sistem, kemunculan karakter grafik tunggal dalam salah satu pattern atau string cocok dengan urutan dua karakter yang setara di string lainnya. Demikian pula, karakter grafik dalam pattern diapit dalam tanda kurung siku (dengan sendirinya, dalam daftar, atau dalam rentang) cocok dengan urutan dua karakter yang setara di string.
Beban Berlebih
Operator Like dapat kelebihan beban, yang berarti bahwa kelas atau struktur dapat menentukan kembali perilakunya ketika operand memiliki jenis kelas atau struktur tersebut. Jika kode Anda menggunakan operator ini pada kelas atau struktur seperti itu, pastikan Anda memahami perilaku yang ditentukan ulang. Untuk informasi selengkapnya, lihat Prosedur Operator.
Contoh
Contoh ini menggunakan Like operator untuk membandingkan string dengan berbagai pola. Hasilnya masuk ke variabel yang Boolean menunjukkan apakah setiap string memenuhi pola.
Dim testCheck As Boolean
' The following statement returns True (does "F" satisfy "F"?)
testCheck = "F" Like "F"
' The following statement returns False for Option Compare Binary
' and True for Option Compare Text (does "F" satisfy "f"?)
testCheck = "F" Like "f"
' The following statement returns False (does "F" satisfy "FFF"?)
testCheck = "F" Like "FFF"
' The following statement returns True (does "aBBBa" have an "a" at the
' beginning, an "a" at the end, and any number of characters in
' between?)
testCheck = "aBBBa" Like "a*a"
' The following statement returns True (does "F" occur in the set of
' characters from "A" through "Z"?)
testCheck = "F" Like "[A-Z]"
' The following statement returns False (does "F" NOT occur in the
' set of characters from "A" through "Z"?)
testCheck = "F" Like "[!A-Z]"
' The following statement returns True (does "a2a" begin and end with
' an "a" and have any single-digit number in between?)
testCheck = "a2a" Like "a#a"
' The following statement returns True (does "aM5b" begin with an "a",
' followed by any character from the set "L" through "P", followed
' by any single-digit number, and end with any character NOT in
' the character set "c" through "e"?)
testCheck = "aM5b" Like "a[L-P]#[!c-e]"
' The following statement returns True (does "BAT123khg" begin with a
' "B", followed by any single character, followed by a "T", and end
' with zero or more characters of any type?)
testCheck = "BAT123khg" Like "B?T*"
' The following statement returns False (does "CAT123khg"?) begin with
' a "B", followed by any single character, followed by a "T", and
' end with zero or more characters of any type?)
testCheck = "CAT123khg" Like "B?T*"