Araç Kutusunda Normal İfadeler nasıl kullanılır?
Yayınlanan: 2022-04-17- Düzenli ifade nedir?
- Normal ifadeleri nasıl oluşturabiliriz?
- Düzenli ifadelerle SEO örnekleri
- Anahtar kelimeleri normal ifadelerle filtreleme
- Marka adını dahil et veya hariç tut
- Markalı terimlerdeki hataları dahil etme veya hariç tutma
- Belirli kelimelerle biten anahtar kelime terimlerini dahil et veya hariç tut
- Belirli kelimelerle başlayan anahtar kelime terimlerini dahil edin veya hariç tutun
- Belirli özelliklerle ilgili anahtar kelime terimlerini dahil edin veya hariç tutun
- Birleşik Kindgom'daki şehirlerin adını içeren anahtar kelime terimlerini dahil edin veya hariç tutun
- URL'leri normal ifadelerle filtreleme
- Alt alanları dahil et veya hariç tut
- / ile biten veya bitmeyen URL'leri dahil edin veya hariç tutun
- Sayı içeren URL'leri dahil et veya hariç tut
- URL'leri belirli bir biçimde dahil edin veya hariç tutun
- Yanlış pazarlarla ilgili URL'leri dahil edin veya hariç tutun
- Özet
Düzenli ifade nedir?
Bir kalıbı kontrol etmek veya doğrulamak için normal bir ifade kullanılır. Ana uygulamaları, örneğin aşağıdaki senaryolarda öğeleri filtrelemek ve eşleşmeleri bulmak içindir:
- Analytics: Trafiği segmentlere ayırmak için Regex'i kullanabilirsiniz.
- Htaccess: URL'leri daha verimli bir şekilde yeniden yazabilirsiniz.
- SISTRIX: URL'ler, snippet'ler veya anahtar kelimeler içeren raporlarımızı filtreleyebilirsiniz.
Normal ifadeler –veya Regex– birçok programlama dilinde kullanılabilir, ancak bu eğitim, zaten mevcut olan SISTRIX Regex işlevselliğinin dayandığı standardı kullandığı için Perl'e dayalı olacaktır.
Normal ifadeleri nasıl oluşturabiliriz?
Bunu, ifadeler oluşturabileceğimiz sözdizimi olduğu için karakterler, gruplamalar, niceleyiciler ve sınıflar kullanarak yapacağız.
karakterler | Davranış | Misal |
---|---|---|
? | Önceki karakteri 1 veya 0 kez arar. | https? |
* | Önceki karakteri 0 veya daha fazla kez arar. | 30* |
+ | Önceki karakteri 1 veya daha fazla kez arar. | [0-9]+ |
| | Bir öğeyi veya diğerini arar. (veya) | (jpg|jpeg) |
^ | Modelin başlangıcını gösterir | ^https |
$ | Desenin sonunu gösterir | html$ |
· | Herhangi bir karakteri arar (joker karakter) | 4.. |
\ | Özel bir karakteri yorumlamıyor (karakterleri atla) | \/ |
gruplama | Davranış | Misal |
---|---|---|
() | Belirli içeriği yakalar | (sistrix) sistrix ile eşleşir |
[] | Parantez içindeki karakterleri yakalar | [0-9] Herhangi bir sayısal karakterle eşleşir [az] Herhangi bir küçük harfle eşleşir |
{} | Minimum veya maksimum yineleme sayısını gösterir | .{1,3} 1 ila 3 kez tekrarlanan herhangi bir karakterle eşleşir. |
Bu eğitimde niceleyicileri kullanmayacağız, ancak diğer ortamlarda kullanmanız durumunda bunlara aşina olmanızın sizin için hala ilginç olduğunu düşünüyoruz.
niceleyiciler | Davranış |
---|---|
\w | Bir kelime, rakam veya _ karakter tipi arar |
\d | Bir rakam karakteri arar |
\s | Bir boşluk karakteri arar |
\b | Bir kelimenin başlangıcını veya sonunu eşleştirir |
\W | Kelime, rakam veya _ olmayan bir karakter arar |
\D | Rakam olmayan bir karakter arar |
\S | Boşluk olmayan bir karakter arar. |
Düzenli ifadelerle SEO örnekleri
Önerilen örnekleri kullanabilmek için 'Anahtar Kelimeler' bölümüne gitmeniz ve Anahtar Kelime, URL, Başlık veya Açıklama filtrelerini kullanmanız gerekir.
Anahtar kelimeleri normal ifadelerle filtreleme
Bu özelliğe erişmek için yalnızca bir etki alanını analiz etmeniz ve Anahtar Kelimeler 2'ye gitmeniz ve ardından Filtre seçimi 3'e gitmeniz gerekir.

Ardından, Regex 4 ile anahtar kelime filtresini kullanın.

Şimdi, projelerinizin anahtar kelime analizinden en iyi şekilde yararlanmak için veya rakiplerinizi analiz ederken bu ifadeleri uygulayabileceğiniz birkaç kullanım örneği önermek istiyoruz.
Marka adını dahil et veya hariç tut
Farklı yazımları kabul eden veya birkaç farklı marka adıyla bilinen bir markanız olduğunu hayal edin. Markalı terimler olduğunu düşündüğümüz tüm anahtar kelimeleri gruplamak için normal bir ifade oluşturabiliriz. Örneğin, currys.co.uk çeşitli markalı anahtar kelimelere sahiptir, yani:
köri, köri, bilgisayar dünyası
Bu nedenle, aşağıdaki ifadeyi kullanacağız:
(curry|currys|pc world).*

Alacağımız sonuçları aşağıda görebilirsiniz:
Aşağıdaki ifadeyi kullanarak filtreyi markalı anahtar kelimeleri hariç tutacak şekilde ayarlamak da mümkündür ve yalnızca genel anahtar kelimeleri görüntüler:
^(?!.*(curry|currys|pc world).*?)

Markalı terimlerdeki hataları dahil etme veya hariç tutma
Ryanair gibi genellikle yanlış yazılan veya hatalarla yazılan markalarla karşılaşma ihtimalimiz var.
Kullanıcıların bu havayolunu aramak için girdiği terimlere birkaç örnek:
- ryanair
- rayaner
- ryan ir
- rayan ir
- rayana eir
- raya nair
- rayan ari
- rayar havası
Tek bir normal ifade kullanarak yakalayabileceğimiz 35'in üzerinde marka adı belirledik:
Tüm marka varyasyonlarını dahil etmek için:
(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e|lines| )?(line|ir)?
![".(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e| satırlar| )?(satır|ir)?" uygulamalı.](/uploads/article/246/J4RlqK5XMR1iRPm6.png)
Tüm marka varyasyonlarını hariç tutmak için:
^((?!(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air)?(e|lines| )?(line|ir)?).)*$
!["^((?!(r|t)[hzeuayi]?[naiy].?[an]?[airn].?(r|t|air) ile ryanair.com için SISTRIX Araç Kutusundaki Anahtar Kelime Tablosu ?(e|lines| )?(line|ir)?).)*$" uygulandı.](/uploads/article/246/x8B4lxmc6Vmja5ch.png)
Elbette bu listeye “içerir”, “içermez”, “ile biter” veya “şununla başlar” gibi başka filtreler de uygulayabiliriz.
Belirli kelimelerle biten anahtar kelime terimlerini dahil et veya hariç tut
Benzersiz bir anahtar kelime aramak için basit bir filtre yeterli olacaktır, ancak birkaç koşulla bir arama yapmak istersek, örneğin: "satın al" ile başlayan ve "çevrimiçi" ile biten tüm anahtar kelimeler, şunları kullanabiliriz:
^buy.*online$
Bu, screwfix.com gibi bir çevrimiçi mağazaya uygulandığında aşağıdaki sonuçları döndürür:

Belirli kelimelerle başlayan anahtar kelime terimlerini dahil edin veya hariç tutun
Bir karşılaştırma aracının bakış açısından, çeşitli marka adlarını içeren anahtar kelimeleri filtreleyebilmek ilginç olabilir.
Örneğin, terimleri istediğimiz ölçüte göre gruplandıracak bir normal ifade oluşturabiliriz; bu durumda, parantez içindeki herhangi bir marka adıyla başlayan herhangi bir anahtar kelime terimidir:
^(sony|panasonic|philips|samsung).*
Benzer şekilde, onları hariç tutmak için kullanabiliriz:
^(?!(sony|panasonic|philips|samsung).*)
Belirli özelliklerle ilgili anahtar kelime terimlerini dahil edin veya hariç tutun
Bunu birçok projede yaygın olarak karşılaşılan bir öznitelik örneği ile deneyelim: fiyat.

“Ucuz”, “indirim”, “çıkış”, “kupon”, “teklif”, “düşük maliyetli”, “bütçe” gibi fiyatı ima eden birçok arama sorgusu vardır.
Bunları sonuçlardan çıkarmak istiyorsak aşağıdaki ifadeyi kullanabiliriz:
.*(cheap|budget|offer|outlet|price).*

Tablonun dinamik sütunlarından yararlanarak, sütun başlığına tıklayarak, verileri arama hacmine göre azalan düzende düzenleyebiliriz.
Diğer durumlarda renkler, şekiller, boyutlar, hedef vb. gibi diğer nitelikleri de kullanabiliriz.
Birleşik Kindgom'daki şehirlerin adını içeren anahtar kelime terimlerini dahil edin veya hariç tutun
Birçok proje yerel bir varlık takibi gerektirir. Bunu yapmak için eyaletleri, bölgeleri, şehirleri, kasabaları vb. Gruplamak için Regex'i kullanabiliriz.
Bu örnekte, bir şehir içeren anahtar kelime terimlerini filtreleyecek bir normal ifade oluşturmak için şehirlerin listesini alacağız.
.*(aberdeen|armagh|bangor|bath|belfast|birmingham|bradford|brighton|brighton & hove|bristol|cambridge|canterbury|cardiff|carlisle|chelmsford|chester|chichester|coventry|derby|derry|dundee|durham|edinburgh|ely|exeter|glasgow|gloucester|hereford|inverness|kingston|kingston upon hull|lancaster|leeds|leicester|lichfield|lincoln|lisburn|liverpool|london|manchester|newcastle|newcastle upon tyne|newport|newry|norwich|nottingham|oxford|perth|peterborough|plymouth|portsmouth|preston|ripon|st albans|st asaph|st davids|salford|salisbury|sheffield|southampton|stoke|stoke-on-trent|sunderland|swansea|truro|wakefield|wells|westminster|winchester|wolverhampton|worcester|york).*
Herhangi bir e-ticaret işletmesi veya fiziksel varlığı olan bir karşılaştırma aracı, şehirleri hariç tutmak ve hatta markalı anahtar kelimeler eklemek veya diğer parametreleri hariç tutmak için bu ifadeyi kullanabilir.
^(?!(.*(aberdeen|armagh|bangor|bath|belfast|birmingham|bradford|brighton|brighton & hove|bristol|cambridge|canterbury|cardiff|carlisle|chelmsford|chester|chichester|coventry|derby|derry|dundee|durham|edinburgh|ely|exeter|glasgow|gloucester|hereford|inverness|kingston|kingston upon hull|lancaster|leeds|leicester|lichfield|lincoln|lisburn|liverpool|london|manchester|newcastle|newcastle upon tyne|newport|newry|norwich|nottingham|oxford|perth|peterborough|plymouth|portsmouth|preston|ripon|st albans|st asaph|st davids|salford|salisbury|sheffield|southampton|stoke|stoke-on-trent|sunderland|swansea|truro|wakefield|wells|westminster|winchester|wolverhampton|worcester|york).*))
Ancak, bunları aşağıda gösterildiği gibi birkaç ifadeye de ayırabiliriz:

Buradan itibaren bu iki ifadenin “veya” türü yerine “ve” türünde olduğunu belirtmek için Uzman Filtresini ekliyoruz.


URL'leri normal ifadelerle filtreleme
URL'leri filtrelemek için izlemeniz gereken adımlar, anahtar kelimeler için araştırdığımız adımlarla aynıdır, tek fark, "URL'leri" ve ardından normal ifadeleri seçmeniz gerektiğidir.

Alt alanları dahil et veya hariç tut
Anahtar kelimeleri filtrelemek için normal ifadelerin nasıl kullanılacağını öğrendiğimize göre, URL'leri filtrelememiz gereken bazı tipik SEO kullanım örneklerini bulalım.
Tüm bir etki alanını analiz etmek ve URL'leri stratejik alt alanlara göre gruplandırmak için bazı temel kullanım örnekleri şunlardır:
(www|support)

Örneğin, tamamen işlemsel alt alanları ayırmak ve bloglardan veya SSS'lerden gelen bilgilendirici anahtar kelimeleri dışarıda bırakmak için bir dışlama filtresi kullanabiliriz.
^^(?!.*(www|support).*?)

/ ile biten veya bitmeyen URL'leri dahil edin veya hariç tutun
Ana sayfanın .com etki alanı bir eğik çizgiyle bitiyorsa, normal ifade aşağıdakilerle eşleşecek şekilde uyarlanabilir:
^.*.com/$
^(?!(.*.com/$))
/ ile biten herhangi bir URL
.*/$
Bu Regex'i, yalnızca eğik çizgi (/) ile biten URL'lere odaklanmak için URL'ler için de kullanabiliriz. Bunu yapmak için, arama çubuğuna (1) etki alanını girin, ardından gezinme (2) içindeki URL'lere tıklayın, bir filtre ekleyin (3) ve URL filtresini "normal ifade" (4) olarak seçin:

Elbette bu, / ile bitmeyen URL'ler için de geçerlidir.
^(?!(.*/$))

Sayı içeren URL'leri dahil et veya hariç tut
Hangilerinin sayı içerdiğini veya hariç tutulacağını belirlemek için URL sözdizimi ile uğraşabiliriz:
.*-[0-9].*
^(?!(.*-[0-9].*))
Daha spesifik bir şey istiyorsak ve belirli bir sayı ile biten URL'ler olduğunu biliyorsak, bunları aşağıdaki gibi dahil edebilir veya hariç tutabiliriz:
.*-[0-9]+$
^(?!(.*-[0-9]+$))
Bu durumda isteğimiz ardışık 8 sayı dizisini içeren zincirleri filtrelemekti.
.*[0-9]{8}.html$
^(?!(.*[0-9]{8}.html$))
URL'leri belirli bir biçimde dahil edin veya hariç tutun
URL biçimlerini filtrelemek için Regex'i de kullanabiliriz. Örneğin, html URL'lerinin yanı sıra htm veya html URL'leri.
Bu oldukça kolaydır, çünkü bunu yapmak için "biter" veya "içerir" filtrelere güvenebiliriz.
.*htm.?$
.*pdf$
İstenen URL biçimlerini hariç tutmak için:
^(?!(.*html.?$).)
^(?!(.*pdf.?$).)
Aynı ifade içinde daha değerli olacak birkaç format kullanabiliriz ve bu, aşağıdakileri içerecek şekilde birkaç filtreyi birleştirme zahmetinden bizi kurtaracaktır:
.*(htm|html)$
.*(jpg|jpeg|gif|png)$
Ayrıca, hariç tutulacak biçimleri de birleştirebiliriz:
^(?!(.*(htm|html)$).)
^(?!(.*htm.?)$).)
^(?!(.*(jpg|jpeg|gif|png)$).)
Yanlış pazarlarla ilgili URL'leri dahil edin veya hariç tutun
Belirli bir pazarın sonuçlarında görünmemesi gereken URL'leri izleyebiliyoruz. Örneğin, İspanya'nın sonuçlarında görünen ABD, Meksika veya Almanya pazarlarıyla ilgili URL'ler.
Aşağıdaki URL örneklerini temel alarak:
İspanya'nın İspanyolcası /es_es/
Birleşik Krallık İngilizcesi /tr_gb/
ABD İngilizcesi /en_us/
İtalya'nın İtalyancası /it_it/
Ve benzeri.
İspanya pazarına ait olmayan URL'lerin sayısını filtrelemek için Regex'i kullanabiliriz.
^(?!(.*[es]_[az].*)|(.*[az]_[es].*).)
![hm.com için SISTRIX Araç Kutusu'ndaki "^(?!(.*[es]_[a-z].*)|(.*[a-z]_[es].*).)" normal ifade filtresi uygulanmış Anahtar Kelime Tablosu .](/uploads/article/246/TIPPU8qnSB57ontM.png)
Gördüğünüz gibi, ifade, dil seçicinin bulunduğu ana sayfa URL'sine izin verir.
Bu ifadeyi daha da hassaslaştırmak ve ana sayfayı dışarıda bırakmak için aşağıda gösterildiği gibi genişletebiliriz:
^(?!(.*.com/$)|(.*[es]_[az].*)|(.*[az]_[es].*).)
![hm.com için SISTRIX Araç Kutusundaki Anahtar Kelime Tablosu, "^(?!(.*.com/$)|(.*[es]_[a-z].*)|(.*[a-z]_[ ile birlikte es].*).)" uygulandı.](/uploads/article/246/vxYA4KacpOcflwYd.png)
Özet
Bu gönderide sağlanan parametrelerle artık normal ifadelerin kullanışlı olabileceği ve SEO analizlerinizi daha verimli hale getirmenize yardımcı olabileceği kendi kullanım durumlarınızı bulabileceksiniz.
https://www.Regextester.com/ gibi araçlarla veya doğrudan SISTRIX'in URL'si, anahtar kelime veya snippet filtreleriyle test etmeye ve uygulamaya devam edebilirsiniz.
Regex için destek sağlamıyor olsak da, bu öğreticiyi yeni kullanım örnekleri ve sizin için faydalı olabilecek SEO analizleri ile güncellemeye devam edeceğiz.