# Filtrelerde ve değiştirmelerde düzenli ifadeler

Language: tr
Canonical: <https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler>
Published: 2026-11-08T22:18:16+00:00
Modified: 2026-11-08T22:18:16+00:00

Düzenli ifade, hangi metnin bulunacağını tanımlar. Tek bir ifadeyi aynen aramak yerine bir desen belirlersiniz: örneğin “Заявка” sözcüğü ve ardından gelen herhangi bir numara. Numara her mesajda değişse bile desen aradığınız parçayı bulur.

Bu şekilde tarihleri, bağlantıları, tek tek sözcükleri, satırların tamamını ve bir kuralla tanımlanabilen hemen her türlü metin birleşimini arayabilirsiniz. Birkaç basit sembol sayesinde değişen değerleri hesaba katabilir, farklı seçenekler arasından seçim yapabilir ve gereksiz olanları atlayabilirsiniz. Bu tür bir arama, sıradan bir sözcük aramasından çok daha fazlasını yapabilir.

![Bir desene göre eşleşen metin parçalarını bulma](<https://flowin.click/wp-content/uploads/2026/10/cf-da8cc01b43e113428f944f35.webp>)

Yazı içeriği

- [Düzenli ifadelerin sunduğu olanaklar](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#headline-6-324>)
- [Düzenli ifade nasıl okunur?](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#reading-pattern>)
- [Düzenli ifade sözdizimi](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#headline-11-324>)
- [FLOWIN arama ayarları](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#flowin-flags>)
- [Hazır desenler](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#headline-45-640>)
- [Sık sorulan sorular](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#faq>)

## Düzenli ifadelerin sunduğu olanaklar

FLOWIN filtreleri ve değiştirmelerindeki düzenli ifade desteği sayesinde şunları yapabilirsiniz:

- Mesajların başına veya sonuna istediğiniz metni eklemek.
- Bağlantı içeren mesajları filtrelemek.
- Kopyalanan mesajlardan bağlantıları, telefon numaralarını, e-posta adreslerini ve diğer iletişim bilgilerini kaldırmak.
- Uzun mesajları veya tam tersine yalnızca kısa mesajları filtrelemek.

“Regexp” modu

Filtre veya değiştirme ayarlarındaki “Ara” alanının yanında bulunan “Regexp” modu, düzenli ifadeyle aramayı etkinleştirir. Desen bu alana yazılır. Kuralın nasıl oluşturulacağı ve yönlendirmeye nasıl uygulanacağı [filtre](<https://flowin.click/tr/articles/iletilen-mesajlari-filtreleme>) ve [değiştirme](<https://flowin.click/tr/articles/iletilen-mesajlarda-degistirmeler>) talimatlarında açıklanmıştır.

[![Değiştirme ayarlarında Ara alanının yanındaki Regexp modu](<https://flowin.click/wp-content/uploads/2026/11/cf-0edf63a12904eab8c3e852c6.webp>)](<https://flowin.click/wp-content/uploads/2026/11/cf-0edf63a12904eab8c3e852c6.webp>)

Değiştirme ayarlarında “Regexp”.

## Düzenli ifade nasıl okunur?

İlk desenimiz ` Заявка №\d+ `. Numaralar farklı olsa da hem ` Заявка №125 ` hem de ` Заявка №8072 ` ile eşleşir. Soldan sağa okuyalım:

- ` Заявка № ` tam olarak bu harfleri, boşluğu ve numara işaretini arar.
- ` \d ` 0 ile 9 arasındaki herhangi bir rakamı belirtir.
- ` + ` bu rakamlardan bir veya daha fazlasının art arda gelmesini gerektirir.

Bulunan parçaya eşleşme denir. Örneğin ` Заявка №125 принята ` mesajındaki eşleşme ` Заявка №125 ` olur; ` принята ` sözcüğü ise bunun dışında kalır. Filtrede eşleşme, mesajın koşula uyup uymadığını belirlemeye yardımcı olur; değiştirmede ise hangi parçanın değiştirileceğini gösterir.

Desendeki sıradan harfler ve boşluklar yazıldıkları gibi aranır. Özel semboller ise kuralları belirler. Aşağıda önce temel gösterimler açıklanıyor, ardından farklı işler için hazır örnekler veriliyor.

## Düzenli ifade sözdizimi

Düzenli ifadeleri kullanmaya başlamak için sözdizimini, yani belirli sembollerin neyi ifade ettiğini bilmek gerekir.

### Temel semboller

- ` ^ ` metnin başlangıcını belirtir.
- ` $ ` metnin sonunu belirtir.
- ` . ` satır sonu dahil herhangi bir karakterle eşleşir.
- ` \d ` 0 ile 9 arasındaki bir rakamla eşleşir.
- ` \w ` bir Latin harfi, rakam veya alt çizgiyle eşleşir.
- ` \n ` satır sonunu belirtir.
- ` \t ` sekme karakterini belirtir.
- ` \s ` normal boşluk, sekme, satır sonu, satır başı veya sayfa sonu karakteriyle eşleşir.
- ` \b ` örneğin bir harf ile boşluk arasındaki sözcük sınırını denetler. Eşleşmeye kendisi bir karakter eklemez.

### Niceleyiciler

Niceleyiciler, kendilerinden önce gelen karakterin veya grubun kaç kez tekrarlanacağını belirtir. Grup, birden fazla karakteri parantez içinde bir araya getirir.

- ` * ` 0 veya daha fazla tekrar anlamına gelir.
- ` + ` 1 veya daha fazla tekrar anlamına gelir.
- ` ? ` 0 veya 1 tekrar anlamına gelir.
- ` {5} ` tam olarak 5 tekrar anlamına gelir.
- ` {1,5} ` 1 ile 5 arasında tekrar anlamına gelir.
- ` {1,} ` 1 veya daha fazla tekrar anlamına gelir.
- ` {0,5} ` 0 ile 5 arasında tekrar anlamına gelir.

Örneğin:

- ` a+ ` şu metinlerle eşleşir: ` a `, ` aa `, ` aaa ` vb.
- ` .* ` boş metin dahil her türlü metinle eşleşir.
- ` аб{3} ` şu metinle eşleşir: ` аббб `.

### Gruplar

Parantezler ` ( ) ` karakterleri bir grupta birleştirir. Gruplar en sık [niceleyiciler](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#quantifiers>) veya dikey çizgi ` | ` ile kullanılır. Bu çizgi mantıksal VEYA anlamına gelir.

Örneğin:

- ` ((Bob)|(Alice)) ` hem ` Bob ` hem de ` Alice ` ile eşleşir.
- ` (abc){3} ` şu metinle eşleşir: ` abcabcabc `.

### Karakter kümesi

Karakter kümesi belirtmek için köşeli parantezler kullanılır: ` [ ] `. Bunların içinde karakterleri şu şekilde sıralayabilirsiniz:

- ` [а-яё] ` Rus alfabesindeki herhangi bir harfle eşleşir.
- ` [абвгд] ` veya ` [а-д] ` şu harflerden biriyle eşleşir: ` а `, ` б `, ` в `, ` г ` veya ` д `.
- ` [a-z] ` Latin alfabesinde ` a ` ile ` z ` arasındaki herhangi bir harfle eşleşir.
- ` [0-5] ` 0 ile 5 arasındaki herhangi bir rakamla eşleşir.

Kümenin başındaki ` ^ ` sembolü mantıksal DEĞİL anlamına gelir:

- ` [^а-яё] ` Rus alfabesindeki harfler dışındaki herhangi bir karakterle eşleşir.
- ` [^a-z] ` Latin alfabesinde ` a ` ile ` z ` arasındaki harfler dışındaki herhangi bir karakterle eşleşir.
- ` [^\s] ` şu kümede yer almayan herhangi bir karakterle eşleşir: ` \s `.

FLOWIN’de ` \w ` Kiril harflerini kapsamaz. ` [а-яё] ` Rus alfabesini kapsar; buna şu harf de dahildir: ` ё `. Ancak ` [а-я] ` aralığı bu harfi içermez.

### Kaçış karakteri kullanımı

Özel bir sembolü sözdiziminin parçası olarak değil, sıradan bir metin karakteri olarak kullanmak için önüne ters eğik çizgi konur: ` \ `. Buna kaçış karakteri kullanımı denir.

Örneğin:

- ` :\) ` şu metinle eşleşir: ` :) `. Buradaki parantez bir grubu değil, sıradan bir parantezi belirtir.
- ` кто\? ` şu metinle eşleşir: ` кто? `. Buradaki soru işareti tekrar sayısını belirlemez.

## FLOWIN arama ayarları

Bayraklar, büyük ve küçük harflerin ayırt edilip edilmeyeceği gibi genel arama kurallarını değiştirir. FLOWIN’de bazı ayarlar zaten etkin olduğundan aynı desen, varsayılan ayarları kullanan harici bir test aracındakinden farklı davranabilir.

Bayraklar zaten ayarlı

Filtrelerde ve değiştirmelerde ` IgnoreCase (i) `, ` Singleline (s) `, ` RE2 ` ve ` Unicode ` etkindir. Bunları her desene elle eklemeniz gerekmez. Uygulamada şu noktalar önemlidir:

- ` i ` büyük/küçük harf ayrımını kaldırır: ` кот ` hem ` Кот ` hem de ` КОТ ` ile eşleşir.
- ` s ` noktanın, yani ` . ` karakterinin satır sonunu da bulmasını sağlar. Bu nedenle ` .* ` birden fazla satırı birden kapsayabilir.
- Çok satırlı mod ` Multiline (m) ` varsayılan olarak kapalıdır: ` ^ ` ve ` $ ` her satırın değil, mesajın tamamının başlangıcını ve sonunu belirtir.
- ` RE2 ` sözdiziminin özelliklerini belirler: ` \d ` 0–9 rakamlarını arar, ` \w ` ise yalnızca Latin harflerini, rakamları ve alt çizgiyi arar. Etkin olan ` Unicode ` Kiril harflerini ` \w ` kapsamına eklemez.

Aşağıdaki hazır örnekler için herhangi bir ayarı değiştirmeniz gerekmez. Bunları başka bir hizmette deniyorsanız bu ayarları göz önünde bulundurun: bayrak adlarının aynı olması, farklı motorların aynı şekilde davranacağını garanti etmez.

## Hazır desenler

Yapmak istediğiniz işi seçin ve deseni “Regexp” modundaki “Ara” alanına kopyalayın. Örneklerde doğrudan bulunan metin gösterilir. Bundan sonra mesaja ne olacağı, yapılandırılan filtreye veya değiştirmeye bağlıdır.

### Her seferinde değişen başvuru numarası

Numarasını önceden bilmeden bir başvuruyu bulmak.

Desen:  
` Заявка №\d+ `

Metin: ` Заявка №125 принята. Заявка №8072 ожидает ответа. `

Bulunan: ` Заявка №125 `, ` Заявка №8072 `.

“Заявка №” metni sabit kalır; ` \d+ ` ise art arda gelen bir veya daha fazla rakamı bulur. № işaretinden önceki boşluk da desene dahildir. “Заявка №ABC” eşleşmez.

### Yalnızca altı rakamdan oluşan mesaj

Tam olarak altı basamaklı bir kod içeren mesajları seçmek.

Desen:  
` ^\d{6}$ `

Metin: ` 482901 `

Bulunan: ` 482901 `.

Başlangıç ve son, mesajın tamamını sınırlar; ` {6} ` ise altı rakam gerektiğini belirtir. “Код: 482901”, “48290” ve sonunda boşluk olan “482901 ” eşleşmez.

### Birkaç metin seçeneğinden biri

İki durumdan birinin geçtiği mesajları bulmak.

Desen:  
` готово|отменено `

Metin: ` Готово: файл отправлен. Другое задание отменено. `

Bulunan: ` Готово `, ` отменено `.

Dikey çizgi “veya” anlamına gelir. Büyük/küçük harf farkı önemli değildir. Sözcük sınırları olmadığında desen, “готового” sözcüğünün içindeki “готово” parçasını da bulur.

### Sözcüğün tamamını bulma, başka sözcüklerin içindeki eşleşmeleri atlama

“котёнок” ve “скот” sözcüklerini atlayarak “кот” sözcüğünü bulmak.

Desen:  
` \bкот\b `

Metin: ` Кот, котёнок и скот. `

Bulunan: ` Кот `.

` \b ` sözcüğün her iki tarafındaki sınırları denetler. Boşluklar ve noktalama işaretleri, sözcüğü çevresindeki metinden ayırabilir; kendileri eşleşmeye dahil olmaz.

### Gün.ay.yıl biçiminde tarih

Günü ve ayı iki, yılı ise dört rakamla yazılmış bir tarihi bulmak.

Desen:  
` \d{2}\.\d{2}\.\d{4} `

Metin: ` Встреча 16.10.2026 в 12:00. `

Bulunan: ` 16.10.2026 `.

` \. ` herhangi bir karakteri değil, normal bir noktayı belirtir. Desen, takvimi değil yazım biçimini denetler: “99.99.2026” da eşleşir.

### Rusça ve İngilizce etiketler

Harflerden, rakamlardan ve alt çizgilerden oluşan etiketleri bulmak.

Desen:  
` #[а-яёa-z0-9_]+ `

Metin: ` #Новости #release_2 #всё_готово `

Bulunan: ` #Новости `, ` #release_2 `, ` #всё_готово `.

\# işaretinden sonra kümedeki karakterlerden bir veya daha fazlası gelir. Boşluk veya kısa çizgi eşleşmeyi sonlandırır: “\#план-дня” içinde yalnızca “\#план” bulunur.

### @username biçiminde bahsetmeler

Bir kullanıcıdan veya kanaldan bahsetmeye benzeyen metinleri bulmak.

Desen:  
` @[a-z0-9_]{3,} `

Metin: ` Автор: @news_room. Ещё один: @ab. `

Bulunan: ` @news_room `.

@ işaretinden sonra en az üç Latin harfi, rakam veya alt çizgi gerekir. Desen yazım biçimini arar; kullanıcının var olup olmadığını denetlemez. Bir e-posta adresinin bir bölümünü de bulabilir.

### http:// veya https:// içeren bağlantılar

Protokolü açıkça yazılmış bir web adresini bulmak.

Desen:  
` https?:\/\/[^\s]+ `

Metin: ` Откройте https://example.org/page и http://example.org `

Bulunan: ` https://example.org/page `, ` http://example.org `.

s harfi isteğe bağlıdır. Desen, // işaretinden sonra en yakın boşluğa veya şu kümedeki başka bir ayırıcıya kadar olan karakterleri alır: ` \s `. Protokol içermeyen bir adres eşleşmez; adrese bitişik bir virgül veya nokta ise eşleşmeye dahil olabilir.

### +7 ve on rakamla yazılmış telefon numarası

Parantez, boşluk ve kısa çizgi olmadan, bitişik yazılmış bir numarayı bulmak.

Desen:  
` \+7\d{10} `

Metin: ` Контакт: +79991234567 `

Bulunan: ` +79991234567 `.

` \+ ` normal bir artı işaretini arar; ` \d{10} ` ise 7’den sonra tam olarak on rakam gelmesini gerektirir. “+7 (999) 123-45-67” biçimi eşleşmez. Bu, numaranın varlığını denetleyen değil, yazım biçimine göre yapılan bir aramadır; daha uzun bir rakam dizisinin içinde de eşleşme olabilir.

### İstenen işaretle başlayan mesajlar

“Важно:” işaretini yalnızca mesajın en başında bulmak.

Desen:  
` ^Важно: `

Metin: ` ВАЖНО: встреча перенесена. `

Bulunan: ` ВАЖНО: `.

^ tüm metnin başlangıcını denetler. “Обновление: Важно: встреча перенесена” içinde eşleşme olmaz. Çok satırlı mod varsayılan olarak kapalı olduğundan ikinci satırın başındaki işaret de eşleşmez.

### Sözcükler arasındaki fazla boşluklar

Daha sonra tek boşlukla değiştirmek için art arda gelen iki veya daha fazla normal boşluğu bulmak.

Desen:  
` [ ]{2,} `

Şu metinde: ` Текст··с···пробелами ` iki grup bulunur: iki boşluk ve üç boşluk. Burada ` · ` işareti yalnızca normal boşluğu gösterir; bu işareti yazmanız gerekmez.

Köşeli parantezlerin içinde normal bir boşluk vardır; ` {2,} ` ise art arda en az iki boşluk gelmesini gerektirir. Fazla boşlukları kaldırmak için bulunan parçalar tek boşlukla değiştirilir. Bu desen satır sonlarını etkilemez.

### Yüz karaktere kadar kısa mesajlar

1 ile 100 karakter uzunluğundaki, boş olmayan mesajları seçmek.

Desen:  
` ^.{1,100}$ `

Metin: ` Короткое сообщение `

Bulunan: ` Короткое сообщение `.

Nokta, boşluklar ve satır sonları dahil her türlü karakteri sayar. Süslü parantezler sınırları belirler; ^ ve $ ise mesajın tamamının denetlenmesini gerektirir. Boş bir mesaj veya 100 karakterden uzun bir metin eşleşmez. Birleşik bir emoji birden fazla karakter olarak sayılabilir.

Listeye yeni desenler eklenecek. Yeni desen önerilerinizi destek ekibine, [@value\_maker](<https://t.me/value_maker>) üzerinden gönderebilirsiniz.

Kendi deseninizi test etme

Kendi düzenli ifadelerinizi [regex101.com](<https://regex101.com/>) üzerinde kolayca test edebilirsiniz. Buradaki arama ayarları FLOWIN’dekilerden farklı olabilir. Bu nedenle deseni çalışan bir yönlendirmeye uygulamadan önce eşleşme beklenen ve beklenmeyen test mesajlarıyla denemeniz gerekir.

## Sık sorulan sorular

 

**“Metin” veya “Liste” ne zaman yeterlidir, ne zaman “Regexp” gerekir?**

“Metin” modu, bilinen tek bir ifade için uygundur; “Liste” ise birkaç seçeneği sıralamanızı sağlar. Metin bir kurala göre değişiyorsa “Regexp” gerekir: örneğin “Заявка” sözcüğünden sonra her seferinde yeni bir numara geliyorsa. Ayrıca sözcük sınırlarını veya karakter sayısını belirlemeye yardımcı olur. Bulunan mesajla ne yapılacağı ayrıca [filtrede](<https://flowin.click/tr/articles/iletilen-mesajlari-filtreleme>) veya [değiştirmede](<https://flowin.click/tr/articles/iletilen-mesajlarda-degistirmeler>) ayarlanır.

 

**Çevrimiçi test aracındaki ifade neden FLOWIN’de farklı çalışıyor?**

Sonuç, motora ve arama ayarlarına bağlıdır. FLOWIN filtrelerinde ve değiştirmelerinde IgnoreCase, Singleline, RE2 ve Unicode zaten etkindir; Multiline ise varsayılan olarak kapalıdır. Bu nedenle büyük/küçük harf ayrımı yapılmaz, nokta satır sonunu bulabilir, ` ^ ` ve ` $ ` ise mesajın tamamını esas alır. [Arama ayarlarını](<https://flowin.click/tr/articles/filtrelerde-ve-degistirmelerde-duzenli-ifadeler#flowin-flags>) karşılaştırın ve ifadeyi FLOWIN’de eşleşme beklenen ve beklenmeyen mesajlarla test edin.

 

**.\* neden birden fazla satırı kapsıyor?**

FLOWIN’de Singleline etkindir: nokta, satır sonuyla da eşleşir. Bu nedenle ` .* ` ilk satırın sonunda durmak zorunda değildir. En yakın satır sonuna kadar olan metni bulmak için ` [^\r\n]+ ` kullanabilirsiniz: bu desen, satır başı ve satır sonu karakterleri dışındaki bir veya daha fazla karakteri arar.

 

**\\w neden Rus harflerini bulmuyor?**

FLOWIN arama ayarlarında ` \w ` Latin harflerini, rakamları ve alt çizgiyi kapsar. Rus harfleri için ` [а-яё] `, bu harflerin art arda geldiği diziler içinse ` [а-яё]+ ` kullanın. ` ё ` harfini ayrıca belirtmeniz gerekir: ` а-я ` aralığı bu harfi kapsamaz. Arama zaten büyük/küçük harf ayrımı yapmadığından büyük ve küçük harfleri ayrı ayrı belirtmeniz gerekmez.

 

**Bir sözcüğü başka bir sözcüğün içinde değil, bütün olarak nasıl bulabilirim?**

Sözcüğün her iki tarafına ` \b ` ekleyin. Örneğin ` \bкот\b ` “Кот, котёнок и скот” metninde “Кот” sözcüğünü bulur, diğer iki sözcüğü atlar. Sınırlar sözcüğün konumunu denetler; boşluklar ve noktalama işaretleri bulunan parçaya dahil olmaz.

 

**Örnekteki tarih deseni, böyle bir tarihin var olup olmadığını denetler mi?**

Hayır. ` \d{2}\.\d{2}\.\d{4} ` ifadesi yalnızca yazım biçimini denetler: iki rakam, nokta, iki rakam, nokta ve dört rakam. Bu nedenle hem ` 16.10.2026 ` hem de ` 99.99.2026 ` ile eşleşir. Bu örnek, tarihe benzeyen parçaları bulmak için uygundur; günün ve ayın geçerli olduğunu doğrulamaz.

 

**Düzenli ifade hiçbir şey bulamazsa neleri kontrol etmeliyim?**

Önce “Ara” alanının yanında “Regexp” seçili olduğundan emin olun. Ardından deseni kaynak metinle karşılaştırın: boşluklar, satır sonları ve sıradan işaretler de eşleşmeyi etkiler. Örneğin ` Заявка №\d+ ` № işaretinden önce boşluk ve ardından rakamlar gerektirir; bu nedenle ` Заявка№125 ` veya ` Заявка №ABC ` ile eşleşmez. Ayrıca ` ^ ` ve ` $ ` sınırlarını da kontrol edin: bunlar varsayılan olarak mesajın tamamını esas alır. Basit bir parçayla başlayın ve her seferinde sonucu test ederek koşulları tek tek ekleyin.
