VBA Benzer Operatör

VBA'da, aşağıdakileri kullanarak iki dizeyi karşılaştırabilirsiniz: Beğenmek dizelerin eşleşmesini kontrol etmek için operatör. Bu öğreticide, bu operatörün farklı desenlerle nasıl kullanılacağını öğreneceksiniz.

VBA'da dizeleri nasıl karşılaştıracağınızı öğrenmek istiyorsanız, buraya tıklayın: VBA Dizeleri Karşılaştır - StrComp

Karşılaştırma operatörlerinin nasıl kullanılacağını öğrenmek istiyorsanız, buraya tıklayın: VBA Karşılaştırma Operatörleri - Eşit Değil ve Daha Fazlası

İki Dizeyi Karşılaştırmak için Like Operatörünü Kullanma

Like operatörüyle, bir dizenin belirli bir metinle başlayıp başlamadığını, onu içerip içermediğini vb. kontrol edebiliriz. Varsayılan olarak, Beğenmek operatörü, Binary yöntemini kullanarak karakterleri karşılaştırır. Bu, operatörün büyük/küçük harfe duyarlı olduğu anlamına gelir. Büyük/küçük harfe duyarsız hale getirmek istiyorsanız, koymanız gerekir. Seçenek Metni Karşılaştır modülünüzün en üstünde. Bu yöntemi kullanarak, Beğenmek operatör “S” ve “s”yi aynı karakterler olarak kabul eder. Örneklerimizde, varsayılan, büyük/küçük harfe duyarlı karşılaştırmayı kullanacağız.

Eşleşme varsa, Beğenmek operatör sonuç olarak True, aksi takdirde False döndürür.

İlk olarak, string değişkenimizin ile başlayıp başlamadığını kontrol etmek istediğimiz basit örneğe bakacağız. Bay. Bunu yapmak için, eşleşen metnin sonuna bir yıldız işareti (*) koymanız gerekir (Bay*). İşte kod:

1234567891011121314 Alt LikeDemo()Dim strName As StringDim blnResult As BoolestrName = "Bay Michael James"strName "Mr*" Gibiyse O zamanblnResult = DoğruBaşkablnResult = YanlışBitirAlt Bitiş

Bu örnekte, string olup olmadığını kontrol etmek istiyoruz. strName İle başlar Bay ve değişkende True veya False döndürün blnSonuç.

İlk önce değerini belirledik strName ile Bay Michael James:

1 strName = "Bay Michael James"

Sonra kullanırız Beğenmek If deyimindeki operatör:

12345 strName "Mr*" Gibiyse O zamanblnResult = DoğruBaşkablnResult = YanlışBitir

olarak strName İle başlar Bay, NS blnSonuç True döndürür:

Resim 1. Dizinin belirli karakterlerle başlayıp başlamadığını kontrol etmek için Beğen operatörünü kullanma

Like Operatörünü Farklı Eşleştirme Modelleriyle Kullanma

Like operatörü, farklı desenlere dayalı olarak iki dizenin eşleşmesini kontrol edebilir. İşte olası eşleşen kalıpların listesi:

Desen kodu

Eşleştirme türü

*

0 veya daha fazla karakterle eşleşir

?

Tek bir karakterle eşleşir

#

Tek bir rakamla eşleşir

[karakterler]

Bir karakter listesinden tek bir karakterle eşleşir

[A-Z]

Alfabeden herhangi bir büyük harfle eşleşir

[A-Za-z]

Alfabeden herhangi bir karakterle eşleşir

[!karakterler]

Karakter listesi hariç tek bir karakterle eşleşir

Şimdi bu kalıpları kodda nasıl kullanacağımızı görebiliriz. İşte birden fazla desen için örnek:

Tek bir karakter eşleştirme:

1234567 strText1 = "ABCDE"Eğer strText1 "AB?DE" gibiyseblnResult1 = DoğruBaşkablnResult1 = YanlışBitir

Tek bir rakamı eşleştirme:

1234567 strText2 = "AB7DE"Eğer strText2 "AB#DE" gibiyseblnResult2 = DoğruBaşkablnResult2 = YanlışBitir

Alfabeden herhangi bir büyük harfle eşleşen:

1234567 strText3 = "ABCDE"Eğer strText3 "AB[A-Z]DE" gibiyse O zamanblnResult3 = DoğruBaşkablnResult3 = YanlışBitir

Alfabeden herhangi bir büyük harfle eşleşmeyen:

1234567 strText4 = "AB7DE"Eğer strText4 "AB[!A-Z]DE" gibiyse O zamanblnResult4 = DoğruBaşkablnResult4 = YanlışBitir

Alfabeden herhangi bir karakteri eşleştirme (büyük harf veya küçük harf):

1234567 strText5 = "ABcDE"Eğer strText5 "AB[A-Za-z]DE" gibiyse O zamanblnResult5 = DoğruBaşkablnResult5 = YanlışBitir

Kodu çalıştırdığınızda, şunu görebilirsiniz: Beğenmek operatör True değerini döndürür blnSonuç her karşılaştırma için değişkenler:

Resim 2. Farklı eşleştirme desenleriyle Beğen operatörünü kullanma

wave wave wave wave wave