JS RegExp shablonlari

ULASHISH

RegExp siz uchun yangimi?

JavaScript RegExp bo‘yicha darsligimizni ko‘ring

let regexp = /pattern/flags; // or let regext = new RegExp(pattern, flags)

RegExp flaglari / modifikatorlari

Xatti-harakatini o‘zgartirish uchun regexp shabloniga flaglar qo‘shish mumkin:

Flag Tavsif
/d Qism-string mosliklarini bajaradi (yangi, 2022)
/g Global moslikni bajaradi (barchasini topadi)
/i Katta-kichik harfni farqlamaydigan moslikni bajaradi
/m Ko‘p qatorli moslikni bajaradi
/s . (nuqta) belgisiga qator tugash belgilariga ham mos kelish imkonini beradi (yangi, 2018)
/u Unicode qo‘llab-quvvatlashini yoqadi (yangi, 2015)
/v Unicode’ni yaxshiroq qo‘llab-quvvatlash uchun /u flagining yangilangan varianti (yangi, 2025)
/y "Yopishqoq" (sticky) qidiruvni bajaradi (yangi, 2015)

RegExp belgilar sinflari

Belgilar sinfi — kvadrat qavslar ichiga olingan bir yoki bir nechta belgi:

Sinf Tavsif
[a] Qavslar orasidagi belgiga mos keladi
[^a] Qavslar orasida BO‘LMAGAN barcha belgilarga mos keladi
[abc] Qavslar orasidagi barcha belgilarga mos keladi
[^abc] Qavslar orasida BO‘LMAGAN barcha belgilarga mos keladi
[a-z] a dan z gacha oraliqdagi barcha belgilarga mos keladi
[^a-z] a dan z gacha oraliqda BO‘LMAGAN barcha belgilarga mos keladi
[0-9] 0 dan 9 gacha oraliqdagi barcha belgilarga mos keladi
[^0-9] 0 dan 9 gacha oraliqda BO‘LMAGAN barcha belgilarga mos keladi

RegExp metabelgilari

Metabelgilar — maxsus ma’noga ega belgilar:

a|b a yoki b ga mos keladi
. Qator tugash belgilaridan tashqari istalgan (wildcard) belgiga mos keladi
\w So‘z belgilariga (harf-raqamli belgilar va _) mos keladi
\W So‘z belgisi bo‘lmagan belgilarga mos keladi
\d Raqamlarga (0-9) mos keladi
\D Raqam bo‘lmagan belgilarga mos keladi
\s Bo‘sh joy belgilariga (probel, tab, yangi qator) mos keladi
\S Bo‘sh joy bo‘lmagan belgiga mos keladi
[\b] Backspace belgilariga mos keladi
\0 NULL belgilariga mos keladi
\n Yangi qator belgilariga mos keladi
\f Sahifa o‘tkazish (form feed) belgilariga mos keladi
\r Karetkani qaytarish (carriage return) belgilariga mos keladi
\t Tab belgilariga mos keladi
\v Vertikal tab belgilariga mos keladi
\p{} Berilgan Unicode xususiyatiga ega belgilarga mos keladi (yangi, 2018)
\P{} Berilgan Unicode xususiyatiga ega BO‘LMAGAN belgiga mos keladi (yangi, 2018)
\ddd Sakkizlik ddd soni bilan berilgan belgiga mos keladi
\xhh O‘n oltilik hh soni bilan berilgan belgiga mos keladi
\uhhhh O‘n oltilik hhhh soni bilan berilgan Unicode belgiga mos keladi

RegExp tasdiqlari (assertions)

Tasdiqlarga chegaralar kiradi, ular qatorlar va so‘zlarning boshi va oxirini bildiradi:

Belgi Tavsif
^ String boshidan, yoki m (multiline) flagi o‘rnatilgan bo‘lsa, qator boshidan mos keladi
$ String oxiridan, yoki m (multiline) flagi o‘rnatilgan bo‘lsa, qator oxiridan mos keladi
\b So‘z boshidan yoki oxiridan mos keladi
\B So‘z boshi yoki oxirida BO‘LMAGAN joyda mos keladi
(?=...) Keyingi stringga mos keladi
(?!...) Keyingi string BO‘LMAGANDA mos keladi
(?<=...) Oldingi stringga mos keladi (yangi, 2018)
(?<!...) Oldingi string BO‘LMAGANDA mos keladi (yangi, 2018)

RegExp guruhlari

Muntazam ifoda guruhlari (ushlovchi guruhlar — capturing groups deb ham ataladi) mos kelgan string qismlarini ajratib olish va qayta ishlatish imkonini beradi. Ular shablonni qavslar () ichiga olish orqali yaratiladi:

Belgi Tavsif
(x) x ga mos keladi va moslikni eslab qoladi
(?<n>x) x ga mos keladi va unga n nomini beradi
(?flag:x) x uchun flag(lar)ni yoqadi
(?flag-flag:x) x uchun flag(lar)ni o‘chiradi


RegExp kvantifikatorlari

Kvantifikatorlar mos kelishi kerak bo‘lgan belgilar yoki ifodalar sonini bildiradi:

Kod Tavsif
x+ Kamida bitta x ga mos keladi
x* x ning nol yoki undan ko‘p takroriga mos keladi
x? x ning nol yoki bitta takroriga mos keladi
x{n} x ning n ta takroriga mos keladi
x{n,m} x ning n dan m tagacha takroriga mos keladi
x{n,} x ning n yoki undan ko‘p takroriga mos keladi

Shuningdek qarang:

JavaScript RegExp metodlari


Brauzerlarda qo‘llab-quvvatlash

/regexp/ — ECMAScript1 (JavaScript 1997) imkoniyati.

U barcha brauzerlarda qo‘llab-quvvatlanadi:

Chrome Edge Firefox Safari Opera


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!