Ideallyfree

Google Analytics’te Regular Expressions Kullanımı-Regex Cheat Sheet

Google Analaytics - Regular Expressions

Regular Expressions

Regular Expressions nam-ı diğer RegEx klavyemizde yer alan (* / . $  ve ^ gibi) karakterleri kullanarak, istediğimiz herhangi bir ifadeyle eşleşebilecek, kapsayacak ya da belki istemediğimiz kısımları hariç tutarak doğru ayrıştırmalar yapmamızı sağlayan ifadeler olarak tanımlanabilir.

Bir diğer ifadeyle bir metin içerisinden belli kurallara uyan alt metinler elde etmek için kullanılan yazılımsal bir ifade biçimi.

Bizim için önemi ise Google Analytics’te görünüm filtreleri, hedefler, segmentler, kitleler, içerik grupları, kanal grupları vs. için kullanılarak daha esnek ve bize özel tanımlamalar oluşturmamızı sağlıyor. Google Analytics Türkçe Yardım dokümanında “Normal İfadeler” olarak tanımlanmış ama bence Türkçe karşılığı fonksiyonlarını pek de çağrıştırmıyor. Tabi bir kurallama dizisine sahip olan RegEx konusunu yeni yeni öğrenen biri olarak tıpkı her programlama dilinde olduğu gibi hata yapmaya oldukça açık olduğunu söyleyebilirim.

RegEx (Regular Expressions) ile Ne Yapabilirim?

Örneğin diyelim ki bir birkaç arkadaşımızla birlikte ortaya koyduğumuz bir girişimimiz var ve buna ait bir websayfamız var. Bu websayfası yeni olduğu için hatrı sayılır bir trafik almıyor fakat websayfamızda sürekli düzenlemeler yapmak zorunda olduğumuz için web sayfasının trafiğinin büyük bir bölümü bizden oluşuyor. Peki biz kendi kullandığımız IP adresi aralığının tamamından gelen verileri trafikten hariç tutarak gerçek trafiğimizi görmek istersek regexle bunu nasıl yaparız? IP adreslerinin 78.191.1.81 – 78.191.1.92 arasında değiştiğini varsayalım. 11 farklı IP adresi girmek yerine, adres aralığının tamamıyla eşleşen 78\.191\.81\.\d* gibi bir normal ifade oluşturabiliriz. Böylece tek bir kod ile hepsini kapsayan bir ifade yazmış oluruz.

Öncelikle Regex’te kullanacağımız karakterler ve anlamları üzerinde duralım:

Regex konusunu yazıya dökmek çok zor olduğu için aşağıdaki tabloyu ve örneklemeleri oluşturdum ki bu konuda kafası karışanlara ilaç gibi gelsin 🙂

Joker Karakterler ve Anlamları

Nokta.

Tek bir karakteri temsil eder (Yeni satır karakteri hariç).

Soru İşareti ?

Bir önceki karakterin ya hiç olmaması ya da sadece 1 adet olması anlamına gelir.

Artı+

1 veya daha fazla defa öncesindeki karakterle eşleşir

Yıldız*

Kendinden önce gelen karakterin ya hiç olmamasını ya da tekrar etmesini sağlar.

Dikey Çizgi |

veya anlamına gelir.

Regular Expressions – Regex Cheat Sheet Buradan Bilgisayarınıza İndirebilirsiniz.

Aşağıdaki tabloyu daha iyi bir deneyim için desktop ya da laptoplarınızdan incelemenizi ya da yukarıda linkte yer alan tablodan görüntülemenizi tavsiye ederim.

KarakterAnlamıÖrnekEşleşirEşleşmez
.Tek bir karakteri
temsil eder
(Yeni satır
karakteri hariç).
Fun.aFundaFuna
?Bir önceki
karakterin
ya hiç olmaması
ya da sadece
1 adet olması
anlamına gelir.
link?1lin1, link1linkk1
+1 veya
daha fazla defa
öncesindeki
karakterle eşleşir
10+10, 1001
*Kendinden
önce gelen karakterin
ya hiç olmamasını
ya da tekrar
etmesini sağlar.
goo*glegogle,
gooooogle
goggle
|veya
anlamına gelir.
web | analistweb,
websitesi,
analist
analiz
Çapalar
^“İle başlar”
anlamını taşır.
Bir dizenin
başındaki bitişik
karakterlerle
eşleşir
^web analizweb
analiz
hizmeti
online
web
analiz
$“İle biter”
anlamını taşır.
Bir dizenin
sonundaki
bitişik
karakterlerle
eşleşir
Gruplar
()Gruplama.
Dizenin herhangi
bir yerinde
belirli bir sıralamayı
izleyen,
parantez içine
alınmış
karakterlerle eşleşir.
Bu da, diğer ifadeleri
gruplandırmak
için kullanılır.
^(goog|web)[0-9]+goog1, web2gooog2
[]Bir aralığı
temsil eder.
Dizenin
herhangi bir yerinde,
herhangi bir
sıralamayı izleyen,
parantez içine
alınmış karakterlerle
eşleşir.
Ya[nl]ışyanlış,
yalnış
yanmış
Dizenin
herhangi bir
yeriyle eşleşmesi
için

köşeli parantez
içine alınmış
bir karakter dizisi
oluşturur
[0-9]
şunlarla eşleşir:
0 ile 9 arası
herhangi
bir rakam
{a}Süslü parantez
içindeki
sayı kadar

tekrar eder.
w{3}wwww, ww
{a,z}a’dan z’ye kadarw{1-3}w,
ww,
www
wwww
.*Herşeyle eşleştiriregitim.*sertifikasiegitim
katilim
sertifikasi
Çıkış
\Bitişik karakterin,
normal ifade
meta karakteri
yerine
olduğu gibi
yorumlanması

gerektiğini belirtir.
Örneğin
\. bitişikteki noktanın,
joker karakter
yerine nokta
veya
ondalık ayırıcı
olarak
yorumlanması
gerektiğini belirtir.
212\.216\.212.216212\216\

Yazıyı yazmam için ilham almamı sağlayan Analytics Akademi’ye ve eğitmen Mustafa Esad Tatlıpınar’da sonsuz teşekkürler.

Konuyla ilgili Analytics Akademi İleri Düzey Google Analytics Eğitimi Yazımı da inceleyebilirsiniz.

Yazımı okuduğunuz için teşekkürler. Faydalı olması dileğiyle.

Funda Tabak

1 yorum