⊗jsSpREChG 102 of 294 menu

Групе симбола у регуларним изразима у JavaScript-у

Постоје специјалне наредбе које омогућавају одабир одмах читавих група симбола. Наредба \d означава цифру од 0 до 9. Наредба \w означава цифру, латинично слово или знак подвлачења. Наредба \s означава размак или размачни симбол: празан простор, прелаз у нови ред, табулацију. Може се инвертовати значење наредбе тако што се напише велико слово: на пример, ако је \d - цифра, онда је \D - није цифра.

Пример

Хајде да пронађемо све цифре:

let str = '1 12 123'; let res = str.replace(/\d/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'! !! !!!'

Пример

Оператори понављања сматрају наредбе-групе јединим целим, односно групишуће заграде нису потребне. У следећем примеру шаблон претраге изгледа овако: цифра од 0 до 9 једном или више пута:

let str = '1 12 123 abc @@@'; let res = str.replace(/\d+/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'! ! ! abc @@@'

Пример

У следећем примеру шаблон претраге изгледа овако: било шта једном или више пута, али не цифра од 0 до 9:

let str = '123abc3@@'; let res = str.replace(/\D+/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'123!3!'

Пример

У овом примеру шаблон претраге изгледа овако: размачни симбол једном:

let str = '1 12 123 abc @@@'; let res = str.replace(/\s/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'1!12!123!abc!@@@'

Пример

У овом примеру шаблон претраге изгледа овако: НИЈЕ размачни симбол једном или више пута. Све подниске, раздвојене размацима, замениће се са '!':

let str = '1 12 123 abc @@@'; let res = str.replace(/\S+/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'! ! ! ! !'

Пример

У овом примеру шаблон претраге изгледа овако: цифра или слово једном или више пута. Све подниске, које се састоје од цифара и слова, замениће се са '!':

let str = '1 12 123a Abc @@@'; let res = str.replace(/\w+/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'! ! ! ! @@@'

Пример

У овом примеру шаблон претраге изгледа овако: НИЈЕ цифра и НИЈЕ слово једном или више пута. Под ову дефиницију у нашем случају спада '@@@' и сви размаци (јер они такође нису цифре ни слова). Обратите пажњу на то да је на крају једна '!' - у њу се трансформисала ниска ' @@@' - са размаком испред:

let str = '1 12 123 Abc @@@'; let res = str.replace(/\W+/g, '!');

Као резултат у променљиву ће бити уписано следеће:

'1!12!123!Abc!'

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

Дата је ниска:

let str = 'a1a a2a a3a a4a a5a aba aca';

Напишите регуларни израз који ће пронаћи ниске, у којима по ивицама стоје слова 'a', а између њих једна цифра.

Дата је ниска:

let str = 'a1a a22a a333a a4444a a55555a aba aca';

Напишите регуларни израз који ће пронаћи ниске, у којима по ивицама стоје слова 'a', а између њих било који број цифара.

Дата је ниска:

let str = 'aa a1a a22a a333a a4444a a55555a aba aca';

Напишите регуларни израз који ће пронаћи ниске, у којима по ивицама стоје слова 'a', а између њих било који број цифара (укључујући и нулу цифара, односно ниска 'aa').

Дата је ниска:

let str = 'avb a1b a2b a3b a4b a5b abb acb';

Напишите регуларни израз који ће пронаћи ниске следећег облика: по ивицама стоје слова 'a' и 'b', а између њих - није број и није размак.

Дата је ниска:

let str = 'ave a#b a2b a$b a4b a5b a-b acb';

Напишите регуларни израз који ће пронаћи ниске следећег облика: по ивицама стоје слова 'a' и 'b', а између њих - није слово, није цифра и није размак.

Дата је ниска:

let str = 'ave a#a a2a a$a a4a a5a a-a aca';

Напишите регуларни израз који ће заменити све размаке на '!'.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј