Java’da düzenli ifadeler, metin işleme ve veri doğrulama gibi görevlerde büyük önem taşır. Bu blog yazısında, Java’da düzenli ifadelerin nasıl kullanıldığını, temel kavramları ve bazı yaygın örnekleri ele alacağız.
Giriş
Düzenli ifadeler, belirli bir deseni tanımlayan ve metin üzerinde arama, değiştirme, eşleştirme gibi işlemler yapmayı sağlayan karakter dizileridir. Java’da java.util.regex
paketi, düzenli ifadelerle çalışmak için Pattern
ve Matcher
sınıflarını sunar.
Düzenli İfadelerin Temelleri
Düzenli ifadeler, metin işleme işlemlerinde kullanılan özel karakterler ve diziler içerir. İşte bazı temel ögeler:
- Nokta (.): Herhangi bir tek karakterle eşleşir.
- Yıldız (*): Önceki karakterin sıfır veya daha fazla tekrarıyla eşleşir.
- Artı (+): Önceki karakterin bir veya daha fazla tekrarıyla eşleşir.
- Soru işareti (?): Önceki karakterin sıfır veya bir tekrarıyla eşleşir.
- Köşeli parantezler []: Belirtilen karakterlerden herhangi biriyle eşleşir.
Java’da Düzenli İfade Kullanımı
Java’da düzenli ifadelerle çalışmak için öncelikle Pattern
sınıfından bir nesne oluşturulur. Bu nesne, tanımladığımız düzenli ifadeyi temsil eder. Ardından Matcher
sınıfı kullanılarak metin üzerinde arama yapılır.
Pattern ve Matcher Sınıfları
Pattern
sınıfı, düzenli ifadeyi derler ve bir desen oluşturur. Matcher
sınıfı ise bu deseni kullanarak metin üzerinde arama yapar.
Örnek 1: E-posta Adresi Doğrulama
E-posta adreslerinin geçerli olup olmadığını kontrol etmek için düzenli ifadeler kullanabiliriz.
import java.util.regex.*;
public class EmailValidation {
public static void main(String[] args) {
String email = "ornek@ornek.com";
String pattern = "^[A-Za-z0-9+_.-]+@[A-Za-z0-9.-]+$";
Pattern compiledPattern = Pattern.compile(pattern);
Matcher matcher = compiledPattern.matcher(email);
boolean matches = matcher.matches();
System.out.println("E-posta geçerli mi? " + matches);
}
}
Örnek 2: Telefon Numarası Doğrulama
Belirli bir formata sahip telefon numaralarını doğrulamak için aşağıdaki gibi bir düzenli ifade kullanabiliriz.
public class PhoneNumberValidation {
public static void main(String[] args) {
String phoneNumber = "0555-555-5555";
String pattern = "^\\d{4}-\\d{3}-\\d{4}$";
Pattern compiledPattern = Pattern.compile(pattern);
Matcher matcher = compiledPattern.matcher(phoneNumber);
boolean matches = matcher.matches();
System.out.println("Telefon numarası geçerli mi? " + matches);
}
}
Sonuç
Java’da düzenli ifadeler, metin işleme işlemlerinde güçlü ve esnek bir araç sunar. Pattern
ve Matcher
sınıfları aracılığıyla, metin üzerinde karmaşık arama ve değiştirme işlemleri kolaylıkla gerçekleştirilebilir. E-posta ve telefon numarası doğrulama gibi yaygın senaryoların yanı sıra, metin içindeki belirli desenleri bulma ve değiştirme işlemleri de düzenli ifadelerle etkili bir şekilde yönetilebilir. Bu blog yazısında verdiğimiz örnekler, Java’da düzenli ifadelerin temellerini ve nasıl kullanılacağını anlamanıza yardımcı olmuştur umarım.
Bir yanıt yazın