⊗jsSpREChG 102 of 294 menu

Tegngrupper i regulære uttrykk i JavaScript

Det finnes spesielle kommandoer som lar deg velge hele grupper av tegn på en gang. Kommandoen \d betyr et siffer fra 0 til 9. Kommandoen \w betegner et siffer, en latinsk bokstav eller understrekingstegnet. Kommandoen \s betegner et mellomrom eller et blanktegn: mellomrom, linjeskift, tabulator. Du kan invertere betydningen av kommandoen ved å skrive stor bokstav: for eksempel, hvis \d er et siffer, så er \D et ikke-siffer.

Eksempel

La oss finne alle sifre:

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

Resultatet i variabelen vil bli følgende:

'! !! !!!'

Eksempel

Repetisjonsoperatorer betrakter kommando-grupper som en helhet, det vil si at grupperende parenteser ikke er nødvendig. I det følgende eksemplet ser søkemønsteret slik ut: siffer fra 0 til 9 en eller flere ganger:

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

Resultatet i variabelen vil bli følgende:

'! ! ! abc @@@'

Eksempel

I det følgende eksemplet ser søkemønsteret slik ut: hva som helst en eller flere ganger, men ikke et siffer fra 0 til 9:

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

Resultatet i variabelen vil bli følgende:

'123!3!'

Eksempel

I dette eksemplet ser søkemønsteret slik ut: blanktegn én gang:

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

Resultatet i variabelen vil bli følgende:

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

Eksempel

I dette eksemplet ser søkemønsteret slik ut: IKKE blanktegn en eller flere ganger. Alle delstrenger, separert med mellomrom, vil bli erstattet med '!':

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

Resultatet i variabelen vil bli følgende:

'! ! ! ! !'

Eksempel

I dette eksemplet ser søkemønsteret slik ut: siffer eller bokstav en eller flere ganger. Alle delstrenger som består av sifre og bokstaver vil bli erstattet med '!':

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

Resultatet i variabelen vil bli følgende:

'! ! ! ! @@@'

Eksempel

I dette eksemplet ser søkemønsteret slik ut: IKKE siffer og IKKE bokstav en eller flere ganger. I vårt tilfelle passer '@@@' og alle mellomrom (de er jo heller ikke sifre eller bokstaver) inn under denne definisjonen. Legg merke til at det på slutten er én '!' - den ble til fra strengen ' @@@' - med et mellomrom foran:

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

Resultatet i variabelen vil bli følgende:

'1!12!123!Abc!'

Praktiske oppgaver

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger, hvor det på kantene står bokstavene 'a', og mellom dem er ett siffer.

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger, hvor det på kantene står bokstavene 'a', og mellom dem er et hvilket som helst antall sifre.

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger, hvor det på kantene står bokstavene 'a', og mellom dem er et hvilket som helst antall sifre (inkludert null sifre, det vil si strengen 'aa').

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger av følgende type: på kantene står bokstavene 'a' og 'b', og mellom dem - ikke et tall og ikke et mellomrom.

Gitt en streng:

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

Skriv et regulært uttrykk som finner strenger av følgende type: på kantene står bokstavene 'a' og 'b', og mellom dem - ikke bokstav, ikke siffer og ikke mellomrom.

Gitt en streng:

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

Skriv et regulært uttrykk som erstatter alle mellomrom med '!'.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis