VBA RegExp' de ilave işaret getirme

Katılım
29 Ocak 2024
Mesajlar
188
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
 
Katılım
2 Temmuz 2014
Mesajlar
222
Excel Vers. ve Dili
2021 Türkçe, 64bit
yalnız ben bunu Regular Expressions (Regex) olayı ile yapmayı öğrenmek istiyordum
Regex kütüphanesi ile yapılma şekli var mıdır?
programcılıkta kullanılan her fonksiyonun bir amacı vardır ve kendisi için en uygun yerde kullanılmalıdır.
burada regular expression kullanmanın bir mantığı var mı ki?
doğrudan harf, harf kıyas çok daha pratik ve hızlı olacaktır. bildiğim kadarıyla da döngüsüz, parçalamadan doğrudan temiz bir desen bulamıyorsunuz.
 
Katılım
29 Ocak 2024
Mesajlar
188
Excel Vers. ve Dili
Office 2016
programcılıkta kullanılan her fonksiyonun bir amacı vardır ve kendisi için en uygun yerde kullanılmalıdır.
burada regular expression kullanmanın bir mantığı var mı ki?
doğrudan harf, harf kıyas çok daha pratik ve hızlı olacaktır. bildiğim kadarıyla da döngüsüz, parçalamadan doğrudan temiz bir desen bulamıyorsunuz.
Halil Hocam sadece öğrenmek amacıyla sormuştum;
eğer bir imkanı yoksa hiç sıkıntı değil,

her şey için çok teşekkürler.
 
Katılım
2 Temmuz 2014
Mesajlar
222
Excel Vers. ve Dili
2021 Türkçe, 64bit
Halil Hocam sadece öğrenmek amacıyla sormuştum;
yok öğrenmek için sorduğunuz farkındayım ama bazen yine de vurgulamak gerekiyor. bazen üyeler -mesela vakti zamanında BEN )- belli bir şey üzerinde aşırı durabiliyor.
 
Üst