Standard lommer i replace-metoden i JavaScript regex

I replace-metoden, i tillegg til lommer med dine egne numre, er alltid standard lommer tilgjengelige: %vFran - hele funnet treff, og - del av strengen før og etter treffet. La oss se på arbeidet med dem med eksempler.

Eksempel

La oss finne alle tall og omslutte dem i runde parenteser:

javascriptlet str = '1 23 456';
let res = str.replace(/\d+/g, '(%vFran)');

Som et resultat vil følgende bli skrevet inn i variabelen:

javascript'(1) (23) (456)'

Eksempel

La oss finne tegnet @ og erstatte det med det som står foran det, hunden, og det som står etter det. Alt dette skal skrives i runde parenteser:

javascriptlet str = '123@456';
let res = str.replace(/@/g, "(@)");

Som et resultat vil følgende bli skrevet inn i variabelen:

javascript'123(123@456)456'

Eksempel

La oss si at vi ønsker å finne dollartegnet og omslutte det i anførselstegn ``. I dette tilfellet, for at ikke skal bli oppfattet som en kommando, må dollartegnet dobles:

javascriptlet str = 'aaa $ bbb';
let res = str.replace(/\$/g, '`$`');

Som et resultat vil følgende bli skrevet inn i variabelen:

javascript'aaa `$` bbb'

Praktiske oppgaver

Задание 1

Gitt en streng:

javascriptlet str = 'a1b2c3';

Skriv et regulært uttrykk som ved siden av hvert tall skriver samme tall.

Задание 2

Gitt en streng:

javascriptlet str = 'sss site.ru zzz site.com kkk';

Erstatt domenene med lenker av typen:

html<a href="http://site.ru">site.ru</a>