⊗jsSpRENPB 132 of 294 menu

Ei-tallentavat sulkeet JavaScriptin säännöllisissä lausekkeissa

Sulkeet ( ) suorittavat kaksi tehtävää - merkkien ryhmittely ja tallennuspaikan funktio. Mutta mitä tehdä, jos haluamme ryhmitellä, mutta emme tallentaa tallennuspaikkaan? Tämän ongelman ratkaisemiseksi on kehitetty erityiset ei-tallentavat sulkeet (?: ) - ne ryhmittelevät, mutta eivät tallenna tallennuspaikkaan.

Esimerkki

Seuraavassa esimerkissä tarvitsemme ensimmäisiä sulkeita ryhmittelyyn ja toisia - tallennuspaikkaan. Kuitenkin molemmat sulkeet tallentavat tiedot tallennuspaikkaan:

let str = 'abab123'; let res = str.match(/(ab)+([1-9]+)/);

Tuloksena tallennuspaikoissamme on seuraavaa:

console.log(res[0]); // tulostaa 'abab123' console.log(res[1]); // tulostaa 'ab' console.log(res[2]); // tulostaa '123'

Esimerkki

Tehdään niin, että ensimmäinen sulkipari vain ryhmittelee, mutta ei tallenna tallennuspaikkaan:

let str = 'abab123'; let res = str.match(/(?:ab)+([1-9]+)/);

Tuloksena ensimmäisessä tallennuspaikassa on numeromme:

console.log(res[1]); // tulostaa '123'
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ää