Aracılığıyla paylaş


Nasıl yapılır: Bir Dizeyi Belirli Bir Desene Göre Eşleştirme (Visual Basic)

Dize Veri Türü ifadesinin bir desene uygun olup olmadığını öğrenmek istiyorsanız Like İşleci'ni kullanabilirsiniz.

Like iki işlenen alır. Sol işlenen bir dize ifadesidir ve sağ işlenen, eşleştirme için kullanılacak deseni içeren bir dizedir. Like dize ifadesinin deseni karşılayıp sağlamadığını belirten bir Boolean değer döndürür.

Dize ifadesindeki her karakteri belirli bir karakterle, joker karakterle, karakter listesiyle veya karakter aralığıyla eşleştirebilirsiniz. Desen dizesindeki belirtimlerin konumları, dize ifadesinde eşleştirilecek karakterlerin konumlarına karşılık gelir.

Dize ifadesindeki bir karakteri belirli bir karakterle eşleştirmek için

Belirli karakteri doğrudan desen dizesine yerleştirin. Belirli özel karakterler köşeli ayraç ([ ] içine alınmalıdır). Daha fazla bilgi için bkz . Like İşleci.

Aşağıdaki örnek, tam olarak tek karakterden Holuşup oluşmadığını myString test eder.

Dim sMatch As Boolean = myString Like "H"

Dize ifadesindeki bir karakteri joker karakterle eşleştirmek için

Desen dizesine bir soru işareti (?) koyun. Bu konumdaki herhangi bir geçerli karakter başarılı bir eşleşme yapar.

Aşağıdaki örnek, tek bir karakterden W ve ardından herhangi bir değerin tam olarak iki karakterinden oluşup bulunmadığını myString test eder.

Dim sMatch As Boolean = myString Like "W??"

Dize ifadesindeki bir karakteri karakter listesiyle eşleştirmek için

Desen dizesine köşeli ayraç ([ ]) koyun ve köşeli ayraçların içine karakter listesini yerleştirin. Karakterleri virgülle veya başka bir ayırıcıyla ayırmayın. Listedeki herhangi bir tek karakter başarılı bir eşleşme yapar.

Aşağıdaki örnek, , veya Ekarakterlerinden tam olarak biri tarafından izlenen geçerli bir karakterden CAoluşup bulunmadığını myString test eder.

Dim sMatch As Boolean = myString Like "?[ACE]"

Bu eşleşmenin büyük/küçük harfe duyarlı olduğunu unutmayın.

Dize ifadesindeki bir karakteri bir karakter aralığıyla eşleştirmek için

Desen dizesine köşeli ayraç ([ ]) koyun ve köşeli ayraçların içine aralıktaki en düşük ve en yüksek karakterleri kısa çizgiyle () ayırarak yerleştirin. Aralıktaki herhangi bir tek karakter başarılı bir eşleşme yapar.

Aşağıdaki örnek, veya karakterlerinden tam olarak birinin ardından gelen karakterlerden jmnumikloluşup oluşmadığını myString test eder.n

Dim sMatch As Boolean = myString Like "num[i-m]"

Bu eşleşmenin büyük/küçük harfe duyarlı olduğunu unutmayın.

Boş Dizeleri Eşleştirme

Like dizisini [] sıfır uzunluklu dize () olarak ele alıyor"". Dize ifadesinin tamamının boş olup olmadığını test etmek için kullanabilirsiniz [] , ancak dize ifadesindeki belirli bir konumun boş olup olmadığını test etmek için bunu kullanamazsınız. Test etmeniz gereken seçeneklerden biri boş bir konumsa, birden çok kez kullanabilirsiniz Like .

Dize ifadesindeki bir karakteri karakter listesiyle eşleştirmek için veya karakter yok

  1. Like aynı dize ifadesinde işlecini iki kez çağırın ve iki çağrıyı Or İşleci veya OrElse İşleci ile bağlayın.

  2. İlk Like yan tümcesinin desen dizesine köşeli ayraç ([ ] ) içine alınmış karakter listesini ekleyin.

  3. İkinci Like yan tümcesinin desen dizesinde söz konusu konuma herhangi bir karakter koymayın.

    Aşağıdaki örnek, yedi basamaklı telefon numarasını phoneNum tam olarak üç sayısal basamak, ardından boşluk, kısa çizgi (), nokta (.) veya hiç karakter içermeyen ve ardından tam olarak dört sayısal basamak için test eder.

    Dim sMatch As Boolean = 
      (phoneNum Like "###[ -.]####") OrElse (phoneNum Like "#######")
    

Ayrıca bkz.