JavaScript Düzenli İfadelerinde Küme Parantezleri
'+', '*', '?' operatörleri
iyidir, ancak bunlarla belirli bir tekrar sayısı
belirtilemez. Bu durumda
{} operatörü imdadınıza yetişecektir.
Şu şekilde çalışır: {5}
- beş tekrar, {2,5} – iki ile beş arasında tekrar
(ikisi dahil), {2,}
- iki veya daha fazla tekrar. Şu varyantın olmadığına dikkat edin:
{,2}. Örneklere bir göz atın:
Örnek
Bu örnekte arama kalıbı şu şekildedir:
'x' harfi, 'a' harfi bir
veya iki kez, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{1,2}x/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'xx ! ! xaaax'
Örnek
Bu örnekte arama kalıbı şu şekildedir:
'x' harfi, 'a' harfi iki
veya daha fazla kez, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{2,}x/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'xx xax ! !'
Örnek
Bu örnekte arama kalıbı şu şekildedir:
'x' harfi, 'a' harfi üç
kez, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{3}x/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'xx xax xaax !'
Örnek
Bu örnekte arama kalıbı şu şekildedir:
'a' harfi on kez:
let str = 'aaa aaaaaaaaaa aaa';
let res = str.replace(/a{10}/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'aaa ! aaa'
Örnek
Bu örnekte kodun yazarı şu kalıbı istemişti:
'x' harfi, 'a' harfi üç
kez ve daha az, 'x' harfi,
ancak ne yazık ki bu - {,3} - çalışmıyor.
Açıkça belirtmek gerekiyor:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{1,3}x/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'xx ! ! !'
Örnek
Sıfır da kabul edilebilir:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{0,3}x/g, '!');
Sonuç olarak değişkene şunlar yazılacaktır:
'! ! ! !'
Pratik Görevler
Bir string verildi:
let str = 'aa aba abba abbba abbbba abbbbba';
'abba', 'abbba', 'abbbba'
stringlerini ve sadece onları bulacak bir düzenli ifade yazın.
Bir string verildi:
let str = 'aa aba abba abbba abbbba abbbbba';
'aba' şeklinde, içinde 'b' harfinin
3'ten az (dahil) göründüğü
stringleri bulacak bir düzenli ifade yazın.
Bir string verildi:
let str = 'aa aba abba abbba abbbba abbbbba';
'aba' şeklinde, içinde 'b' harfinin
4'ten fazla (dahil) göründüğü
stringleri bulacak bir düzenli ifade yazın.