Reguliarios išraiškos eilutė JavaScript

Reguliariosios išraiškos gali būti pateikiamos eilučių pavidalu. Tai patogu tais atvejais, kai jums reikia daryti kintamųjų įterpimus į reguliarias išraiškas arba formuoti jas dinamiškai.

Pažiūrėkime pavyzdžiu. Tarkime, kad turime tokią eilutę:

javascriptlet str = 'img.png';

Tarkime, kad šiai eilutei taikome šią reguliariąją išraišką:

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

Perrašykime šią reguliariąją išraišką eilutės pavidalu. Tai daroma naudojant specialųjį objektą RegExp:

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

Dabar išskirkime dalį reguliariosios išraiškos į kintamąjį ir įterpkime ją naudodami konkatenaciją:

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

O dabar įterpkime kintamąjį naudodami šablonines eilutes:

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

O dabar suformuokime dalį reguliariosios išraiškos iš masyvo:

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

Praktinės užduotys

Задание 1

Išskirkite domenų zonų pavadinimus į atskirą kintamąjį:

javascriptlet reg = /^[a-z]+\.(ru|by|ua)$/;
let res = reg.test(str);
Задание 2

Modifikuokite ankstesnę užduotį atsižvelgdami į tai, kad domenų zonos saugomos masyvo pavidalu:

javascriptlet arr = ['ru', 'by', 'ua'];