Cirkumflex-tecknet inuti mängder i JavaScript reguljära uttryck

Som du vet skapar cirkumflex inuti [ ] en negation när den skrivs i början av hakparenteserna. Det betyder att den är ett specialtecken inuti dessa hakparenteser. För att få cirkumflex som ett tecken måste du antingen escape:a den eller flytta den från den första positionen.

Exempel

I följande exempel är sökmönstret: det första tecknet är allt utom 'd', sedan två bokstäver 'x'.

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

Som ett resultat kommer följande att skrivas till variabeln:

javascript'! ! ! dxx'

Exempel

Och nu är sökmönstret: det första tecknet är 'd' eller '^', sedan två bokstäver 'x':

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

Som ett resultat kommer följande att skrivas till variabeln:

javascript'axx bxx ! !'

Exempel

Du behöver inte flytta cirkumflex från den första positionen, utan kan bara escape:a den med ett omvänt snedstreck, och den kommer att representera sig själv:

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

Som ett resultat kommer följande att skrivas till variabeln:

javascript'axx bxx ! !'

Praktiska uppgifter

Задание 1

Given en sträng:

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

Skriv ett reguljärt uttryck som hittar strängar enligt mönstret: cirkumflex eller at-symbol, följt av två latinska bokstäver.

Задание 2

Given en sträng:

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

Skriv ett reguljärt uttryck som hittar strängar enligt mönstret: INTE cirkumflex och inte at-symbol, följt av två latinska bokstäver.

Задание 3

Given en sträng:

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

Skriv ett reguljärt uttryck som hittar strängar enligt mönstret: inte cirkumflex och inte mellanslag, följt av två latinska bokstäver.