Regex Üretme Promptu: Test Edilebilir Desen
Regex'i tahminle değil test case'lerle üreten prompt: eşleşmesi ve eşleşmemesi gereken örnekler zorunlu.
Sen düzenli ifadeler (regex) konusunda uzman bir geliştiricisin. Aşağıdaki ihtiyaç için regex yaz. DİL / FLAVOR: [JAVASCRIPT / PYTHON / PHP / JAVA / .NET / PCRE / GO] AMAÇ: [NE EŞLEŞTİRMEK İSTİYORSUN — tek cümle] EŞLEŞMESİ GEREKEN ÖRNEKLER (pozitif) 1. [ÖRNEK 1] 2. [ÖRNEK 2] 3. [ÖRNEK 3] EŞLEŞMEMESİ GEREKEN ÖRNEKLER (negatif) 1. [ÖRNEK 1] 2. [ÖRNEK 2] 3. [ÖRNEK 3] ÇIKTI 1) REGEX Tek satır, kopyalanabilir. Bölümlerine ayırarak açıkla: hangi parça neyi yapıyor. 2) TEST TABLOSU | Girdi | Beklenen | Eşleşti mi | Not | Tüm pozitif ve negatif örnekleri tek tek değerlendir. Eşleşmeyen pozitif varsa deseni düzelt. 3) DİL NOTU Bu flavor'a özgü farklar (escape kuralları, named group sözdizimi, lookbehind desteği). 4) SINIRLAR Bu regex'in yakalayamadığı veya yanlış yakalayabileceği durumlar. Regex'in yanlış araç olduğu bir senaryo varsa söyle. 5) ALTERNATİF Regex yerine kod ile yapmak daha güvenli olur mu? Neden? KURALLAR - Greedy/non-greedy seçimini gerekçelendir. - Unicode ve Türkçe karakterleri (ç, ğ, ı, İ, ö, ş, ü) hesaba kat. - Deseni mümkün olduğunca okunabilir tut; gereksiz kısa yazma.
02 — Değişkenler
Köşeli parantezleri doldurun
Prompt içindeki renkli alanlar sizin bilginizle değişecek yerlerdir. Hepsini doldurmak zorunda değilsiniz; boş bırakılan alanı model kendi varsayımıyla tamamlar.
[DİL / FLAVOR]
Hangi regex motoru
ör. JavaScript [NE EŞLEŞTİRMEK İSTİYORSUN]
Hedef format
ör. Türkiye telefon numarası [ÖRNEK 1]
Geçerli örnek
ör. 0532 123 45 67 [JAVASCRIPT / PYTHON / PHP / JAVA / .NET / PCRE / GO]
Prompt içinde doldurulacak alan
[ÖRNEK 2]
Prompt içinde doldurulacak alan
[ÖRNEK 3]
Prompt içinde doldurulacak alan
03 — Kullanım
Adım adım nasıl kullanılır?
- 01
Negatif örnekleri mutlaka yazın; regex'in asıl testi yanlış şeyleri yakalamamasıdır.
- 02
Test tablosunu bir regex test sitesinde (regex101 gibi) doğrulayın.
- 03
Türkçe karakter içeren metinlerde 'i' harfinin büyük/küçük davranışını ayrıca test edin.
- 04
Karmaşık desenlerde named group kullanın; bakımı çok kolaylaştırır.
04 — Varyasyonlar
Aynı prompt, farklı sonuç
Tek bir prompt her işi çözmez. Aşağıdaki varyasyonlar aynı görevi farklı ton, uzunluk veya formatta ister — duruma göre birini seçin.
Mevcut regex'i düzelt
Çalışmayan deseni onarır.
Aşağıdaki regex istenen şeyi yakalamıyor. Regex: `[REGEX]`. Dil: [DİL]. Eşleşmesi gereken: [ÖRNEK]. Yanlış eşleştiği durum: [ÖRNEK]. Çıktı: (1) sorunun nedeni, (2) düzeltilmiş regex, (3) iki desenin farkı satır satır, (4) test tablosu.
Log ayrıştırma
Log satırlarından veri çekmek için.
Şu formattaki log satırlarını ayrıştıracak bir regex yaz ve named group kullan: [LOG ÖRNEĞİ]. Dil: [DİL]. Çıkarılacak alanlar: tarih, seviye, kaynak, mesaj. Çıktı: regex, alan açıklamaları, 3 örnek satır üzerinde test tablosu, ve bu log formatı değişirse desenin nasıl kırılacağı notu.
Form doğrulama
Kullanıcı girdisi kontrolü.
[ALAN — örn. e-posta / TCKN / IBAN] doğrulaması için regex yaz. Dil: [DİL]. Çıktı: (1) gevşek doğrulama (format kontrolü), (2) sıkı doğrulama (mümkünse checksum dahil), (3) hangisini neden seçmeliyim, (4) bu alan için regex'in yetersiz olduğu durumlar ve ek doğrulama önerisi, (5) test tablosu.
05 — İpuçları
Sonucu bir üst seviyeye taşıyan notlar
- Regex ile e-posta doğrulamak hiçbir zaman tam doğru değildir; format kontrolü yapın, gerçek doğrulamayı gönderim ile yapın.
- Negatif test case'i olmayan regex üretimi, fazla eşleşen (over-matching) desenler üretir.
- Karmaşık regex'i koda gömmeden önce yorum satırıyla bölümlerini açıklayın.
06 — Sık sorulanlar
Yazılım ve Kod hakkında sık sorulanlar
Regex öğrenmek için ne kadar zaman gerekir?
Temel kalıpları (karakter sınıfları, nicelik belirteçleri, gruplar, çapalar) anlamak birkaç saat sürer. Pratikte çoğu geliştirici regex'i ezberlemez, ihtiyaç anında üretir ve test eder — bu tamamen geçerli bir yaklaşımdır.
Neden regex'im bazen fazla eşleşiyor?
Genellikle greedy (açgözlü) nicelik belirteçleri yüzünden: `.*` mümkün olduğunca çok karakter yakalar. `.*?` (non-greedy) veya daha dar karakter sınıfları (`[^"]*`) kullanmak bu sorunu çözer.
Türkçe karakterlerde nelere dikkat etmeliyim?
Büyük/küçük harf duyarsız eşleşmede 'i' ve 'İ' sorun çıkarır (Türkçe'de 'İ' harfinin küçüğü 'i' değil 'ı'dır). Unicode bayrağı (u) ve açık karakter listeleri kullanmak güvenli yoldur. Ayrıca `\w` sınıfı çoğu motorda Türkçe karakterleri kapsamaz.
Devamı
Bunlar da işinize yarar
Kod Yazma Promptu: Temiz, Test Edilebilir Fonksiyon
Belirsiz istek yerine sözleşme tanımlayan kod promptu: dil, sürüm, girdi/çıktı, hata durumları ve testler.
Orta ChatGPTClaudeSQL Sorgu Yazma Promptu (Şema Vererek)
Şemayı vermeden yazdırılan SQL genelde çalışmaz; bu prompt şema, ilişki ve beklenen çıktıyı zorunlu kılar.
Orta ChatGPTClaudeKod Hatası Bulma (Debug) Promptu
“Neden çalışmıyor?” sorusunu sistematik bir teşhise çeviren, hipotez kurduran ve doğrulama adımı isteyen debug promptu.
Orta ChatGPTClaudePython Kod Yazdırma Promptu (Çalışan ve Açıklamalı)
“Bana bir script yaz” demek eksik kod getirir. Bu prompt girdiyi, çıktıyı, hata durumunu ve testi baştan tanımlar.
OrtaBu sayfa CopyPromt editör ekibi tarafından hazırlandı, ilk yayın 24 Ekim 2026. Promptlar modelden bağımsız çalışacak şekilde yazılır; marka adları yalnızca tanımlama amacıyla anılır.