⊗jsSpREGL 101 of 294 menu

JavaScriptda muntazam ifodalarning ochko‘zligini cheklash

Muntazam ifodalar sukut bo‘yicha ochko‘z. Bu ular maksimal mumkin bo‘lgan belgilar sonini qamrab olishlarini anglatadi. Keling, buni misol bilan ko‘rib chiqaylik. Faraz qilaylik, bizda quyidagi satr bor:

let str = 'aeeex zzz x kkk';

Faraz qilaylik, biz ushbu satrdan 'aeeex' pastki satrini quyidagi andazada topishni xohlaymiz: 'a' harfi, keyin istalgan belgi bir yoki bir necha marta, keyin 'x' harfi.

let res = str.replace(/a.+x/g, '!');

Biz natijada o‘zgaruvchiga '! zzz x kkk' satri yozilishini kutamiz. Biroq, bunday bo‘lmaydi - o‘zgaruvchiga '! kkk' satri kiradi.

Muammo shundaki, bizning muntazam ifoda 'a' harfidan 'x' harfigacha bo‘lgan barcha belgilarni qidiradi. Ammo bizning satrimizda ikkita 'x' harfi bor! Ochko‘zlik tufayli muntazam ifoda oxirgi 'x'gacha qidiradi, shu bilan biz kutgandan boshqasini qamrab oladi.

Albatta, ko‘p hollarda aynan shunday xatti-harakat kerak. Ammo aynan ushbu holatda biz ochko‘zlikni bekor qilishni va muntazam ifodaga birinchi 'x'gacha qidirishni aytishni xohlaymiz.

Ochko‘zlikni cheklash uchun takrorlash operatoridan keyin so‘roq belgisini qo‘yish kerak:

let res = str.replace(/a.+?x/g, '!');

Ochko‘zlikni barcha takrorlash operatorlariga cheklash mumkin: *, ?, va {} - mana shunday: *?, ?? va {}?.

Satr berilgan:

let str = 'aba accca azzza wwwwa';

Chettalarida 'a' harflari turgan barcha satrlarni topadigan va ularning har birini '!' bilan almashtiradigan muntazam ifoda yozing. 'a' harflari orasida istalgan belgi ('a'dan tashqari) bo‘lishi mumkin.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish