⊗jsSpREChG 102 of 294 menu

Merkkiryhmät JavaScriptin säännöllisissä lausekkeissa

On olemassa erikoiskomentoja, joiden avulla voidaan valita hetesti kokonaisia merkkiryhmiä. Komento \d tarkoittaa numeroa 0:sta 9:ään. Komento \w tarkoittaa numeroa, latinalaista kirjainta tai alaviivaa. Komento \s tarkoittaa välilyöntiä tai välilyöntimerkkiä: välilyönti, rivinvaihto, sarkain. Voit kääntää komennon merkityksen kirjoittamalla ison kirjaimen: esimerkiksi, jos \d on numero, niin \D on ei-numero.

Esimerkki

Etsitään kaikki numerot:

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'! !! !!!'

Esimerkki

Toistotoimittajat pitävät ryhmäkomennot yhtenä kokonaisuutena, eli ryhmitteleviä sulkeita ei tarvita. Seuraavassa esimerkissä hakumalli näyttää tältä: numero 0:sta 9:ään yksi tai useampi kerta:

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'! ! ! abc @@@'

Esimerkki

Seuraavassa esimerkissä hakumalli näyttää tältä: mitä tahansa yksi tai useampi kerta, mutta ei numero 0:sta 9:ään:

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'123!3!'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: välilyöntimerkki yksi kerta:

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

Tuloksena muuttujaan kirjoitetaan seuraava:

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

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: EI välilyöntimerkki yksi tai useampi kerta. Kaikki välilyönneillä erotetut osajonot korvataan merkillä '!':

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'! ! ! ! !'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: numero tai kirjain yksi tai useampi kerta. Kaikki numeroista ja kirjaimista koostuvat osajonot korvataan merkillä '!':

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'! ! ! ! @@@'

Esimerkki

Tässä esimerkissä hakumalli näyttää tältä: EI numero eikä kirjain yksi tai useampi kerta. Tämän määritelmän mukaisesti tapauksessamme osuu merkkijonoon '@@@' ja kaikki välilyönnit (ne eivät myöskään ole numeroita eivätkä kirjaimia). Huomaa se, että lopussa on yksi '!' - siihen muuttui merkkijono ' @@@' - jossa on välilyönti edessä:

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

Tuloksena muuttujaan kirjoitetaan seuraava:

'1!12!123!Abc!'

Käytännön tehtävät

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka löytää merkkijonot, joissa reunoissa on kirjaimet 'a', ja niiden välissä on yksi numero.

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka löytää merkkijonot, joissa reunoissa on kirjaimet 'a', ja niiden välissä on mikä tahansa määrä numeroita.

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka löytää merkkijonot, joissa reunoissa on kirjaimet 'a', ja niiden välissä on mikä tahansa määrä numeroita (mukaan lukien nolla numeroa, eli merkkijono 'aa').

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka löytää seuraavanlaiset merkkijonot: reunoissa on kirjaimet 'a' ja 'b', ja niiden välissä - ei numero eikä välilyönti.

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka löytää seuraavanlaiset merkkijonot: reunoissa on kirjaimet 'a' ja 'b', ja niiden välissä - ei kirjain, ei numero eikä välilyönti.

Annettu merkkijono:

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

Kirjoita säännöllinen lauseke, joka korvaa kaikki välilyönnit merkillä '!'.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää