⊗jsSpREStri 134 of 294 menu

Տողը ռեգուլյար արտահայտությամբ JavaScript-ում

Ռեգուլյար արտահայտությունները կարող են ներկայացվել տողերի տեսքով։ Սա հարմար է այն դեպքում, երբ անհրաժեշտ է փոփոխականներ ներդնել ռեգուլյար արտահայտությունների մեջ կամ դրանք դինամիկ կերպով ձևավորել։

Դիտարկենք օրինակով։ Ենթադրենք ունենք հետևյալ տողը.

let str = 'img.png';

Ենթադրենք այս տողին կիրառում ենք հետևյալ ռեգուլյար արտահայտությունը.

let reg = /\.(png|jpg)$/; let res = str.match(reg);

Այժմ այս ռեգուլյար արտահայտությունը գրենք տողի տեսքով։ Դա արվում է հատուկ RegExp օբյեկտի միջոցով.

let reg = new RegExp('\\.(png|jpg)$'); let res = str.match(reg);

Այժմ ռեգուլյար արտահայտության մի մասը հանենք փոփոխականի մեջ և ներդնենք այն՝ օգտագործելով կոնկատենացիա.

let pat = 'png|jpg'; let reg = new RegExp('\\.(' + pat + ')$'); let res = str.match(reg);

Այժմ փոփոխականը ներդնենք՝ օգտագործելով տեմպլատային տողերը.

let pat = 'png|jpg'; let reg = new RegExp(`\\.(${pat})$`); let res = str.match(reg);

Այժմ ռեգուլյար արտահայտության մի մասը ձևավորենք զանգվածից.

let exts = ['png', 'jpg']; let pat = exts.join('|'); let reg = new RegExp(`\\.(${pat})$`); let res = str.match(reg);

Գործնական առաջադրանքներ

Դոմենային գոտիների անվանումները հանեք առանձին փոփոխականի մեջ.

let reg = /^[a-z]+\.(ru|by|ua)$/; let res = reg.test(str);

Փոփոխեք նախորդ առաջադրանքը՝ հաշվի առնելով, որ դոմենային գոտիները պահվում են զանգվածի տեսքով.

let arr = ['ru', 'by', 'ua'];
enswsvplcs