Символот каретка в множество во регуларни изрази во JavaScript

Како што знаете, карелката внатре во [ ] прави негација, кога се наоѓа на почетокот на заградите. Значи, таа е специјален символ внатре во овие загради. За да се добие каретка како симбол, потребно е или да се ескрапира, или да се тргне од првата позиција.

Пример

Во следниот пример шаблонот за пребарување е: првиот симбол е се освен 'd', потоа две букви 'x'.

javascriptlet str = 'axx bxx ^xx dxx';
let res = str.replace(/[^d]xx/g, '!');

Како резултат во променливата ќе се запише следново:

javascript'! ! ! dxx'

Пример

А сега шаблонот за пребарување е: првиот симбол - е 'd' или '^', потоа две букви 'x':

javascriptlet str = 'axx bxx ^xx dxx';
let res = str.replace(/[d^]xx/g, '!');

Како резултат во променливата ќе се запише следново:

javascript'axx bxx ! !'

Пример

Може да не се тргне карелката од првата позиција, туку едноставно да се ескрапира со помош на обратна коса црта, и таа ќе го означува самиот симбол:

javascriptlet str = 'axx bxx ^xx dxx';
let res = str.replace(/[\^d]xx/g, '!');

Како резултат во променливата ќе се запише следново:

javascript'axx bxx ! !'

Практични задачи

Задание 1

Дадена е низа:

javascriptlet str = '^xx axx ^zz bkk @ss';

Напишете регуларен израз, кој ќе ги најде низите според шаблонот: карелка или симболот @, а потоа две латински букви.

Задание 2

Дадена е низа:

javascriptlet str = '^xx axx ^zz bkk @ss';

Напишете регуларен израз, кој ќе ги најде низите според шаблонот: НЕ карелка и не симболот @, а потоа две латински букви.

Задание 3

Дадена е низа:

javascriptlet str = '^xx axx ^zz bkk';

Напишете регуларен израз, кој ќе ги најде низите според шаблонот: не карелка и не празно место, а потоа две латински букви.