Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Komut Satırında ve IDE'de Regex: grep -E/-P, ripgrep, sed, git grep, PowerShell ve Repo Genelinde Find/Replace
Repo genelinde regex ile değişikliği güvenli yapmanın sırası şu: temiz çalışma ağacı, dosya listesini git grep ile almak, rg -r ile önizlemek, sed -E ile uygulamak ve git diff ile kontrol etmek. grep, ripgrep, PowerShell ve IDE'lerin regex farklarını, Bookstore'da interpolation'lı log çağrılarını message template'e çeviren gerçek bir refactor'u ve CRLF'li dosyada $'ın neden eşleşmediğini .NET 11'in AnyNewLine option'ıyla birlikte gösteriyoruz.
Gruplar ve Backreference: Capture, Named Group, Non-capturing, Alternation ve Replace'te $1/${name}
Capture group'lar açılış parantezinin sırasıyla numaralanır, ama .NET isimli grupları en sona koyduğu için aynı $2/$1 replacement'ı .NET'te ve JavaScript'te farklı sonuç verir. Named group yazımlarını, ES2025'in tekrar eden grup isimlerini, backreference ile tekrar eden kelimeyi, POSIX'in en uzun eşleşme kuralını ve .NET, JavaScript, sed ve VS Code'un replace syntax'ını gerçek çıktılarla karşılaştırıyor, Bookstore'un CSV'sinde yazar adlarını çeviriyoruz.