Ana içeriğe atla

Excel Regex Eğitimi: Düzenli İfadelerle Desen Eşleştirmede Uzmanlaşın

Excel'de desen eşleştirme için Düzenli İfadelerin (RegEx) gücünü keşfedin. Kapsamlı kılavuzumuz, verileri nasıl standartlaştıracağınızı, anahtar kelimeleri nasıl çıkaracağınızı ve gelişmiş metin işlemlerini nasıl gerçekleştireceğinizi ortaya koyuyor.
Güncel 3 Eki 2026  · 12 dk. oku

Yapay Zeka ile Keşfedin

ChatGPTClaudePerplexity

Farklı biçimlerdeki telefon numaraları listesini hiç standartlaştırmanız gerekti mi? Ya da serbest metin alanlarından anahtar kelimeler çıkarmak? Karşınızda: RegEx! RegEx, yani Düzenli İfadeler, metin blokları içindeki dizeleri eşleştirmek için kullanılan güçlü ve esnek kalıplardır. Bu yazıda yaygın regex sözdiziminden, Excel'de regex'i nasıl etkinleştireceğinizden ve son olarak onları etkili bir şekilde nasıl kullanacağınızdan bahsedeceğiz.

Düzenli İfadeler nedir?

Sıklıkla "regex" veya "regexp" olarak kısaltılan düzenli ifadeler, arama kalıbını tanımlamanın bir yoludur ve bu kalıp; arama, ayrıştırma ve/veya metni değiştirme gibi çeşitli metin işleme görevlerinde kullanılabilir. Düzenli ifadeler, desen eşleştirme içeren görevler için programlama dillerinde, metin düzenleyicilerde ve diğer yazılımlarda yaygın olarak kullanılır. Excel'deki regex türü ya da sözdizimi, .NET düzenli ifade motoruna dayanır.

Yaygın Düzenli İfadeler

Düzenli ifadeler, onları tanımlayan özelliklere göre gruplandırılabilir. Aşağıda karşılaşacağınız yaygın düzenli ifadeler yer alıyor.

Yazılı (literal) karakterler

Düzenli ifadeler, kendileriyle birebir eşleşen yazılı karakterler içerebilir. Örneğin, "hello" regex'i, tam olarak "hello" dizgesiyle eşleşir.

Metakarakterler

Düzenli ifadeler ayrıca özel anlamları olan metakarakterler de içerir. Bazı yaygın metakarakterler şunlardır:

  • . (nokta): Satır sonu dışında herhangi bir tek karakterle eşleşir.
  • *: Önceki karakterin veya grubun sıfır ya da daha fazla tekrarını eşleştirir.
  • +: Önceki karakterin veya grubun bir ya da daha fazla tekrarını eşleştirir.
  • ?: Önceki karakterin veya grubun sıfır ya da bir tekrarını eşleştirir.
  • | (dikey çizgi): Mantıksal VEYA gibi davranır ve alternatifler belirtmenize olanak tanır.
  • () (parantez): Karakterleri veya alt kalıpları birlikte gruplar.
  • [] (köşeli parantez): Bir karakter sınıfı tanımlar; belirtilen karakter kümesinden herhangi bir karakterle eşleşmenizi sağlar.
  • ^ (şapka): Bir satırın veya dizgenin başlangıcıyla eşleşir.
  • $: Bir satırın veya dizgenin sonuyla eşleşir.
  • \ (ters eğik çizgi): Bir metakarakteri kaçışlayarak onu harfiyen eşleştirir.

Karakter sınıfları

Düzenli ifadelerdeki (regex) karakter sınıfları, bir karakter kümesi içinden herhangi birini eşleştirmenizi sağlayan özel gösterimlerdir. Belirli bir karakter grubunu kısaca belirtme imkânı sağlayarak regex kalıplarını sadeleştirirler. Karakter sınıflarını tanımlamak için [...] köşeli parantezleri kullanabilirsiniz. Örneğin, [aeiou] herhangi bir sesli harfle eşleşir. [A-Z] herhangi bir büyük harfle eşleşir.

Nicelik belirteçleri (quantifier)

Nicelik belirteçleri, hedef dizgede belirli bir kalıp, karakter veya karakter sınıfının eşleşme için kaç kez geçmesi gerektiğini belirtir. Başka bir deyişle, bir karakterin veya grubun kaç kez tekrar edileceğini tanımlarlar. Örneğin, a{3} art arda tam üç "a" karakteriyle eşleşir. ab? "a" ya da "ab" ile eşleşir.

Çapalar (anchors)

Çapalar, dizgedeki herhangi bir karakterle değil, karakterlerden önce, sonra veya aralarındaki bir konumla eşleşen özel karakterlerdir. Kalıbın metnin belirli bir yerinde meydana gelmesini sağlamak için kullanılırlar. Örneğin, ^ kalıbı dizgenin başına, $ ise sonuna sabitler.

Değiştirici (modifier)

Değiştiriciler, regex motorunun kalıbı nasıl yorumladığını değiştiren karakterlerdir. Eşleştirme davranışını ayarlamak için kullanılır; böylece daha fazla esneklik ve kontrol sağlarlar. Büyük/küçük harf duyarlılığı, çok satırlı eşleştirme ve özel karakterlerin nasıl yorumlandığı gibi çeşitli yönleri etkileyebilirler. Örneğin, i kalıbı büyük/küçük harfe duyarsız hale getirir, g ise genel (global) yapar; yani girdideki tüm eşleşmeleri yakalar.

Excel'de Düzenli İfadelerin Kullanım Alanları

RegEx çeşitli senaryolarda işe yarar:

Veri doğrulama

Çoğu durumda, doğru bilgilere baktığınızdan emin olmak için verileri doğrulamanız gerekir. Klasik bir örnek telefon numaralarıdır. ABD'de standart biçim (###) ###-####'dir. Ancak şu şekilde de yazılabilirler: ###-###-####, (+#) ### ### ####, ########## vb. RegEx, dosyada yer alan bilginin gerçekten telefon numarası olup olmadığını belirlemeye yardımcı olabilir. Aşağıdaki düzenli ifade, isteğe bağlı 1 ila 2 haneli bir ülke koduyla birlikte 10 haneli telefon numaralarında eşleşme döndürür: (\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$.

Metin çıkarma

Uzun cümleler, geleneksel bir elektronik tablo yazılımı tarafından çoğu zaman zor ayrıştırılır. Belirli anahtar kelimeleri çıkarmak için RegEx kullanabilirsiniz. Örneğin, bir röportaj dökümünde tek tırnak işaretleri içine alınmış kitap adlarını çıkarmak için şu düzenli ifadeyi kullanabiliriz: '(.*?)'.

Metin dönüştürme

Bilgi çıkarmanın yanı sıra, raporlama amacıyla veriyi dönüştürüp standartlaştırabilirsiniz. Diyelim ki ABD posta kodlarının ilk beş rakamını çıkarmakla ilgileniyoruz. Posta kodu içeren bir alandaki tüm örnekleri ^\d{5} düzenli ifadesini kullanarak değiştirebiliriz.

Tokenleştirme

Tokenleştirme, metni tek tek belirteçlere veya kelimelere bölme işlemidir. Metni tokenleştirmek için kurallar tanımlamak üzere regex kalıpları kullanılabilir. Örneğin, boşluk karakterlerinde bölmek için \s+ veya noktalama gibi kelime olmayan karakterlerde bölmek için \W+ kullanabilirsiniz.

Ek kalıplar hakkında bilgi için Python'da Düzenli İfadeler kopya kılavuzumuza göz atın.

Excel'de RegEx Kullanma

Excel yerel olarak RegEx'i desteklemese de, Windows için bir VBA betiğiyle kendi özel tanımınızı yazarak (Windows) veya eklentileri etkinleştirerek (Mac) bunu kullanabilir hale getirebilirsiniz. Excel'de bir sütundan metin çıkarmak için bir regex işlevini nasıl etkinleştireceğimizi adım adım inceleyelim.

Windows için

Başlamak için Alt+F11 tuşlarına basarak Visual Basic Düzenleyicisi'ni açın. Ayrıca Araçlar > Makro > Visual Basic Düzenleyicisi yoluyla da gidebilirsiniz. Ardından, Ekle > Modül tıklayın.

Aşağıdaki işlevi modüle yapıştırın:

Public Function CustomRegExpExtract(inputText As String, regexPattern As String, Optional instanceNumber As Integer = 0, Optional matchCase As Boolean = True) As Variant
    Dim textMatches() As String
    Dim matchesIndex As Integer
    Dim regex As Object
    Dim matches As Object
    
    On Error GoTo ErrHandler
    
    CustomRegExpExtract = ""
    
    ' Create a regular expression object
    Set regex = CreateObject("VBScript.RegExp")
    regex.Pattern = regexPattern
    regex.Global = True
    regex.MultiLine = True
    
    ' Set case sensitivity
    If matchCase Then
        regex.IgnoreCase = False
    Else
        regex.IgnoreCase = True
    End If
    
    ' Execute the regex pattern on the input text
    Set matches = regex.Execute(inputText)
    
    If matches.Count > 0 Then
        If instanceNumber = 0 Then
            ' If instanceNumber is 0, return all matches in an array
            ReDim textMatches(matches.Count - 1, 0)
            For matchesIndex = 0 To matches.Count - 1
                textMatches(matchesIndex, 0) = matches.Item(matchesIndex)
            Next matchesIndex
            CustomRegExpExtract = textMatches
        Else
            ' If instanceNumber is specified, return the match at that instance
            CustomRegExpExtract = matches.Item(instanceNumber - 1)
        End If
    End If
    
    Exit Function

ErrHandler:
    ' Handle errors by returning an error value
    CustomRegExpExtract = CVErr(xlErrValue)
End Function

' Modified from an original script by Patrick Matthews

İşlevi kaydedin ve çalışma sayfasına geri dönün. Şimdi, çalışma kitabını .xlsm dosya uzantısıyla makro özellikli olarak kaydedin.

Excel Çalışma Sayfasında İşlevi Kullanma

Excel çalışma kitabınızda makroları etkinleştirerek, artık CustomRegExpExtract işlevini Excel'deki normal bir işlev gibi kullanarak karmaşık dize kalıplarını ayrıştırabilirsiniz; burada:

  • inputText ayrıştırılacak özgün dizgedir;
  • regexPattern inputText'i ayrıştırmak için kullanılan düzenli ifade kalıbıdır;
  • instanceNumber varsayılan olarak kalıbın tüm örneklerini döndürür, ancak döndürülecek örnek sayısını belirtmek için bir tamsayı girilebilir; ve
  • matchCase eşleştirme sırasında metnin büyük/küçük harf durumunun dikkate alınıp alınmayacağını (TRUE veya boş bırakılırsa) ya da yok sayılacağını (FALSE) belirtir.

Diyelim ki bir alandan telefon numaralarını çıkarmak istiyoruz. Regex kalıbını herhangi bir hücreye yazabiliriz (aşağıdaki durumda A2 hücresinde görünüyor). A6 hücresinde serbest biçimli dizgeniz örnek olarak "Sophia, 1111111111" bulunuyor. B6 hücresine =CustomRegExpExtract(A6,$A$2) yazıyoruz. İşlev, A2 hücresindeki regex kalıbına göre dizgeyi eşleştirerek telefon numarasını çıkarır ve beklendiği gibi "1111111111" döndürür.

image1.png

Mac OS için

Ne yazık ki Mac OS, MS VBScript Regular Expressions 5.5 kitaplığını tanımaz. Mac'te Excel'de karmaşık desen eşleştirmeyi etkinleştirmek için iki seçenek vardır: gelişmiş filtreleri kullanmak veya paketler kurmak.

image2.png

Gelişmiş filtreleri kullanma

Excel'deki gelişmiş filtreler, birden çok ölçüte dayalı karmaşık veri filtreleme işlemlerini gerçekleştirmenize yardımcı olur. Bu özellik özellikle büyük veri kümeleriyle çalışırken faydalıdır. Excel'de gelişmiş filtrelerin nasıl kullanılacağına bakalım:

  • Verilerinizi hazırlayın: Verinizin, net başlıkların bulunduğu tablo benzeri bir biçimde olduğundan emin olun.
  • Ölçüt Aralığı (Criteria Range) oluşturun: Çalışma sayfanızda filtreleme ölçütlerini tanımlamak için ayrı bir alan oluşturun. Bu alan, filtrelemek istediğiniz sütunlarla aynı başlıklara sahip olmalıdır. Bu başlıkların altına filtreleme ölçütlerini belirtin. Aynı başlık altında birden çok ölçüt girerek "VEYA" mantığı kurabilir veya ayrı satırlarda girerek "VE" mantığı oluşturabilirsiniz.
  • Veriyi seçin: Veri kümeniz içindeki bir hücreye tıklayın ya da filtrelemek istediğiniz tüm aralığı seçin.
  • Filtreyi ayarlayın: Excel şeridindeki Veri sekmesine tıklayın ve Gelişmiş Filtre seçeneğine gidin. Sırala ve Filtre Uygula grubunda Gelişmiş'i tıklayın. Gelişmiş Filtre iletişim kutusunda, listeyi yerinde mi filtrelemek istediğinizi yoksa sonuçları başka bir konuma mı kopyalamak istediğinizi seçin. Liste aralığını (veriniz) belirtin. Ölçüt aralığını (filtreleme koşullarını belirlediğiniz yer) belirtin. Filtreyi uygulamak için Tamam'a tıklayın.

Diyelim ki Ad, Yaş, Şehir sütunlarından oluşan bir veri kümeniz var. New York'ta 30 yaş üstü olanları veya Los Angeles'taki herkesi gösterecek şekilde filtrelemek istiyorsunuz. Ölçüt aralığınız şöyle görünebilir:

Name

Age

City

 

>30

New York

   

Los Angeles

Eklenti yükleme

  • Kutools for Excel: Kutools, regex kullanarak verileri bulma ve değiştirme özelliği de dahil olmak üzere birçok işlev içeren kapsamlı bir eklentidir. Excel şeridine regex işlevleri de dâhil geniş bir araç yelpazesi sunan yeni bir sekme ekler.
  • RegEx Find/Replace: Bu eklenti, düzenli ifadeler kullanarak metin bulup değiştirmenizi sağlar. Excel'e entegre olur ve yerleşik seçeneğe göre daha gelişmiş bir bul/değiştir işlevselliği sunar.
  • PowerGREP: Doğrudan bir Excel eklentisi olmasa da PowerGREP, Excel dosyalarıyla çalışabilir. Metin ve ikili dosyalar üzerinde karmaşık regex işlemlerine izin veren güçlü bir Windows grep aracıdır. Daha çok bağımsız bir uygulamadır ancak Excel ile birlikte gelişmiş regex işlemleri için kullanılabilir. Ancak ucuz değildir. Tek kullanıcı lisansı 159 $ ve 100 kullanıcı lisansı için fiyat 5.300 $'a kadar çıkar.

Bazı eklentiler doğrudan Excel içinde Ekle sekmesi > Eklentiler Al üzerinden bulunabilir.

Diğerleri harici bir kaynaktan indirilip kendi kurulum talimatlarına göre yüklenmelidir.

Birkaç husus:

  • Uyumluluk: Eklentinin Excel sürümünüz ve işletim sisteminizle uyumlu olduğundan emin olun.
  • Güvenlik: Yalnızca güvenilir kaynaklardan eklenti indirip yükleyin.
  • İşlevsellik İhtiyaçları: Gerçekleştirmeniz gereken özel regex görevlerini göz önünde bulundurun ve bu ihtiyaçlara en uygun eklentiyi seçin.

Sonuç

Çoğu durumda, FIND, SEARCH ve REPLACE gibi yerel işlevler, Excel'deki metin işleme ihtiyaçlarınızın %90'ını karşılar. Ancak, daha karmaşık dize kalıplarını içeren kalan %10 için regex son derece yardımcı olabilir. Yaygın programlama dilleriyle düzenli ifadeleri uygulamayı öğrenmek için Python'da Düzenli İfadeler ve R'de Orta Düzey Düzenli İfadeler kurslarımıza göz atın.

Excel ile ilgili her şeye hızla hâkim olmak için, aracı yetkin şekilde kullanmak için gereken temel becerileri öğreten Excel Fundamentals yetenek yolumuzu inceleyin.


Chloe Lubin's photo
Author
Chloe Lubin

Gündüzleri veri analisti, geceleri hikâye anlatıcısı. Bilgimi kullanarak veri okuryazarlığı açığını kapatmayı ve yeni başlayanların bu alana geçişine yardımcı olmayı seviyorum. Felsefem, günde yalnızca 5 dakika da olsa her gün bir şeyler öğrenmektir!

Konular
Elektronik Tablolar

Excel Yolculuğunuza Bugün Başlayın!

Kurs

Excel’e Giriş

4 sa
271.9K
Excel'in temellerine hakim olun ve etkili analizler yapmak için bu elektronik tablo aracını kullanmayı öğrenin.
Ayrıntıları GörüntüleRight Arrow
Kursa Başla
Devamını GörRight Arrow
İlgili

blog

Hızlı Sevkiyat İçin Pratik Vibe Kodlama Teknoloji Yığını

Ön uç, arka uç, veritabanları, kimlik doğrulama, depolama, e-posta, test, dağıtım ve izleme için en iyi araçları keşfedin.
Abid Ali Awan's photo

Abid Ali Awan

14 dk.

blog

2026’da En Popüler 40 Yazılım Mühendisi Mülakat Sorusu

Algoritmalar, sistem tasarımı ve davranışsal senaryoları kapsayan bu temel sorularla teknik mülakat sürecine hakim olun. Uzman cevapları, kod örnekleri ve kanıtlanmış hazırlık stratejileri edinin.
Dario Radečić's photo

Dario Radečić

15 dk.

Eğitim

Python'da Listeyi String'e Nasıl Dönüştürürsünüz

Bu hızlı eğitimde, Python'da bir listeyi string'e nasıl dönüştüreceğinizi öğrenin.
Adel Nehme's photo

Adel Nehme

Eğitim

.gitignore Nasıl Kullanılır: Örneklerle Pratik Bir Giriş

Git deponuzu temiz tutmak için .gitignore’u nasıl kullanacağınızı öğrenin. Bu eğitim; temelleri, yaygın kullanım durumlarını ve başlamanıza yardımcı olacak pratik örnekleri kapsar!
Kurtis Pykes 's photo

Kurtis Pykes

8 dk.

Devamını GörDevamını Gör