VBA RegExp' de ilave işaret getirme

Katılım
29 Ocak 2024
Mesajlar
187
Excel Vers. ve Dili
Office 2016
Deneyiniz
Kod:
Sub KarakterleriKarsilastir()
    Dim pattern As String
    Dim inputMetin As String
    Dim i As Long
    Dim eslesenKarakterSayisi As Long

    pattern = "@122100011122111"
    inputMetin = "@122100011b2211a"
    eslesenKarakterSayisi = 0

    ' İki metnin de aynı uzunlukta olduğunu varsayıyoruz
    If Len(pattern) = Len(inputMetin) Then
        For i = 1 To Len(pattern)
            If Mid(pattern, i, 1) = Mid(inputMetin, i, 1) Then
                eslesenKarakterSayisi = eslesenKarakterSayisi + 1
            End If
        Next i
        MsgBox "Eşleşen karakter sayısı: " & eslesenKarakterSayisi
    Else
        MsgBox "Pattern ve input metin farklı uzunluklarda."
    End If
End Sub
Hocam teşekkür ederim,
yalnız ben bunu Regular Expressions (Regex) olayı ile yapmayı öğrenmek istiyordum
Regex kütüphanesi ile yapılma şekli var mıdır?

iyi Çalışmalar dilerim.
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
565
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
Hocam teşekkür ederim,
yalnız ben bunu Regular Expressions (Regex) olayı ile yapmayı öğrenmek istiyordum
Regex kütüphanesi ile yapılma şekli var mıdır?

iyi Çalışmalar dilerim.
Deneyiniz.
Kod:
Sub RegexKarakterKarsilastir()
    Dim regEx As Object
    Dim pattern As String
    Dim inputMetin As String
    Dim eslesenKarakterSayisi As Long
    Dim i As Long

    pattern = "@122100011122111"
    inputMetin = "@122100011b2211a"
    eslesenKarakterSayisi = 0

    Set regEx = CreateObject("VBScript.RegExp")

    If Len(pattern) = Len(inputMetin) Then
        For i = 1 To Len(pattern)
            regEx.Pattern = "^" & Mid(pattern, i, 1) & "$"
            If regEx.Test(Mid(inputMetin, i, 1)) Then
                eslesenKarakterSayisi = eslesenKarakterSayisi + 1
            End If
        Next i
        MsgBox "Regex ile eşleşen karakter sayısı: " & eslesenKarakterSayisi
    Else
        MsgBox "Pattern ve input metin farklı uzunluklarda."
    End If
End Sub
 
Üst