Նիշերի բազմությունների ինվերսում ռեգուլյար արտահայտություններում

Քառակուսի փակագծերի սկզբում տեղադրված '^' շլյապկայի օգնությամբ կարելի է ինվերսել ցանկալին։ Այսինքն, եթե, օրինակ, [ab] հրամանը փնտրում է 'a' կամ 'b' նիշը, ապա [^ab] հրամանը կփնտրի բոլոր նիշերը, բացառությամբ 'a' և 'b' նիշերի։

Օրինակ

Այս օրինակում որոնման ձևանմուշն ունի հետևյալ տեսքը․ 'x' տառը, ապա ՉԵ 'a' տառը, ոչ 'b' և ոչ 'c', ապա 'z' տառը:

javascriptlet str = 'xaz xbz xcz xez';
let res = str.replace(/x[^abc]z/g, '!');

Արդյունքում փոփոխականի մեջ կգրվի հետևյալը․

javascript'xax xbx xcx !'

Օրինակ

Այս օրինակում որոնման ձևանմուշն ունի հետևյալ տեսքը․ 'x' տառը, ապա ՉԵ փոքր լատինական տառ, ապա 'z' տառը:

javascriptlet str = 'xaz xbz x1z xCz';
let res = str.replace(/x[^a-z]z/g, '!');

Արդյունքում փոփոխականի մեջ կգրվի հետևյալը․

javascript'xaz xbz ! !'

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

Задание 1

Գրեք ռեգուլյար արտահայտություն, որը կգտնի տողերը ըստ հետևյալ ձևանմուշի․ '1' թվանշանը, ապա այն նիշը, որը 'e' չէ և ոչ 'x', ապա '2' թվանշանը։

Задание 2

Գրեք ռեգուլյար արտահայտություն, որը կգտնի տողերը ըստ հետևյալ ձևանմուշի․ 'x' տառը, ապա ՉԵ 2-ից 7 թվանշան, ապա 'z' տառը։

Задание 3

Գրեք ռեգուլյար արտահայտություն, որը կգտնի տողերը ըստ հետևյալ ձևանմուշի․ 'x' տառը, ապա ՉԵ մեծ լատինական տառ 1 և ավելի անգամ, ապա 'z' տառը։

Задание 4

Գրեք ռեգուլյար արտահայտություն, որը կգտնի տողերը ըստ հետևյալ ձևանմուշի․ 'x' տառը, ապա ՉԵ մեծ կամ փոքր լատինական տառ և ոչ թվանշան 1-ից 5 1 և ավելի անգամ, ապա 'z' տառը։