Java Regex Capturing Groups

Regex kullanarak parantezler içindeki değerleri alabilmek için öncelikle uygun bir pattern belirlemke gerekmektedir. Örneğin şöyle bir String değerimiz olduğunu düşünelim:

String valLoc=”POINT(45569.23568 41589.58963)”

Bu string değerimizden parantezler içindeki iki sayıyı ayrı ayrı alabilmek için şöyle bir pattern yazıyoruz:

“(?<long>[0-9.]+) (?<lat>[0-9.]+)”

Bu pattern ile parantez içindeki değerimizi alıp “long” ve “lat” diye iki ayrı parametreye göre sayılarımızı ayrı ayrı alacaz. Bu iki parametreye göre sayılarımızı ayrı ayrı alabilmek için de regex gruplama yapacaz. Bunu yaparken de aşağıdaki örnek kodda olduğu gibi bu iki parameterimizi kullanacaz:

Matcher m = Pattern.compile(“(?<long>[0-9.]+) (?<lat>[0-9.]+)”).matcher(valLoc);

while (m.find()) {
validateLocationX = m.group(“long”);
validateLocationY = m.group(“lat”);
}

Böyle bir kod yazıldıktan sonra artık parantez içindeki iki sayı değerimizi ayrı ayrı iki değişkene almış olduk.

Erman Ağ Geliştirici on 23 Ağustos 2017 yazdı
Yorum Ekle
  • 0 Yanıt(lar)
  • Yanıtınız

    Cevabınızı göndererek Gizlilik Politikası ve Hizmet Şartlarını kabul ediyorsunuz.