Standard-Capturing-Groups in der replace-Methode von JavaScript-Regulären Ausdrücken

In der replace-Methode sind neben den Capturing-Groups mit Ihren eigenen Nummern auch immer Standard-Capturing-Groups verfügbar: %vFran - die gesamte gefundene Übereinstimmung, und - der Teil des Strings vor und nach der Übereinstimmung. Lassen Sie uns ihre Funktionsweise an Beispielen betrachten.

Beispiel

Lassen Sie uns alle Zahlen finden und sie in runde Klammern einschließen:

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

Als Ergebnis wird Folgendes in die Variable geschrieben:

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

Beispiel

Lassen Sie uns das Zeichen @ finden und es durch das, was davor steht, das @-Zeichen selbst, und das, was dahinter steht, ersetzen. Alles schreiben wir in runde Klammern:

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

Als Ergebnis wird Folgendes in die Variable geschrieben:

javascript'123(123@456)456'

Beispiel

Angenommen, wir möchten ein Dollarzeichen finden und es in Backticks `` einschließen. In diesem Fall, damit nicht als Befehl interpretiert wird, muss das Dollarzeichen verdoppelt werden:

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

Als Ergebnis wird Folgendes in die Variable geschrieben:

javascript'aaa `$` bbb'

Praktische Aufgaben

Задание 1

Gegeben sei ein String:

javascriptlet str = 'a1b2c3';

Schreiben Sie einen regulären Ausdruck, der neben jeder Ziffer die gleiche Ziffer schreibt.

Задание 2

Gegeben sei ein String:

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

Ersetzen Sie die Domains durch Links der Form:

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