JavaScript regular ifodalarida figurali qavslar
'+', '*', '?' operatorlari
yaxshi, ammo, ular yordamida aniq takrorlanishlar sonini
ko‘rsatib bo‘lmaydi. Bu holatda sizga {} operatori
yordam beradi.
U quyidagicha ishlaydi: {5}
- besh marta takrorlanadi, {2,5} – ikki beshgacha (har ikkisi ham qo‘shilgan), {2,}
- ikki yoki undan ko‘p marta takrorlanadi. E'tibor bering
{,2} kabi variant mavjud emas. Misollarni ko‘rib chiqing:
Misol
Ushbu misolda qidirsh shabloni quyidagicha ko‘rinadi:
'x' harfi, 'a' harfi bir
yoki ikki marta, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{1,2}x/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'xx ! ! xaaax'
Misol
Ushbu misolda qidirsh shabloni quyidagicha ko‘rinadi:
'x' harfi, 'a' harfi ikki
marta va undan ko‘p, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{2,}x/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'xx xax ! !'
Misol
Ushbu misolda qidirsh shabloni quyidagicha ko‘rinadi:
'x' harfi, 'a' harfi uch
marta, 'x' harfi:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{3}x/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'xx xax xaax !'
Misol
Ushbu misolda qidirsh shabloni quyidagicha ko‘rinadi:
'a' harfi o‘n marta:
let str = 'aaa aaaaaaaaaa aaa';
let res = str.replace(/a{10}/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'aaa ! aaa'
Misol
Ushbu misolda kod muallifi quyidagi shabloni xohlagan:
'x' harfi, 'a' harfi uch
marta va undan kam, 'x' harfi,
lekin, afsuski, {,3} - ishlamaydi.
Aniq ko‘rsatish kerak:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{1,3}x/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'xx ! ! !'
Misol
Nol ham ruxsat etilgan:
let str = 'xx xax xaax xaaax';
let res = str.replace(/xa{0,3}x/g, '!');
Natijada o‘zgaruvchiga quyidagi yoziladi:
'! ! ! !'
Amaliy vazifalar
Quyidagi satr berilgan:
let str = 'aa aba abba abbba abbbba abbbbba';
'abba', 'abbba', 'abbbba'
va faqat ularni topadigan regular ifodani yozing.
Quyidagi satr berilgan:
let str = 'aa aba abba abbba abbbba abbbbba';
'aba' ko‘rinishidagi, unda 'b'
3 martadan kam (qo‘shilgan holda) uchraydigan satrlarni topadigan regular ifodani yozing.
Quyidagi satr berilgan:
let str = 'aa aba abba abbba abbbba abbbbba';
'aba' ko‘rinishidagi, unda 'b'
4 martadan ko‘p (qo‘shilgan holda) uchraydigan satrlarni topadigan regular ifodani yozing.