Regex dátum – ÉÉÉÉ-HH-NN egyeztetése a csoportokkal
A JavaScript reguláris kifejezéseinek hibakeresése élőben: kiemelt egyezések, rögzítési csoportok, jelzők és csere előnézet.
Eredmény
Ez az oldal előre betölt egy mintát az ISO 8601 dátumokhoz: (?<év>\d{4})-(?<hónap>0[1-9]|1[0-2])-(?<nap>0[1-9]|[12]\d|3[01]). A számjegyek elfogadása helyett a hónapcsoport csak a 01-12-t, a napcsoport pedig a 01-31-et engedélyezi – a minta szövege ezt mutatja a 2026-13-01 és 2026-00-10 számokkal, amelyek páratlanok maradnak.
A három megnevezett csoport jelenti a gyakorlati nyereményt: a meccslistában a szöveg alatt látható az év, a hónap és a nap külön-külön kivonatolva minden talált dátumhoz. A kódban ugyanezek a csoportok lehetővé teszik az eredmény.csoportok.év beírását a zárójelek számolása helyett – és a helyettesítő mezőben itt átrendezheti a dátumot $<day>.$<hónap>.$<év> értékre, hogy az ISO-dátumokat egy lépésben európai jelöléssé konvertálja.
A regex nem tudhatja, hogy februárban 28 nap van – a 2026-02-31 még egyezik. Ez normális: a minta feladata, hogy dátum alakú karakterláncokat találjon és részekre bontsa őket; a végső naptárellenőrzés a kódjához tartozik. Illessze be saját naplóit vagy CSV-exportált fájljait, és nézze meg, hogyan viselkedik a minta valós adatokon.