Θήκες στην μέθοδο match στις κανονικές εκφράσεις JavaScript
Όπως ήδη γνωρίζετε, η υποσυμβολοσειρά που βρέθηκε μέσω της μεθόδου match
εμφανίζεται στο μηδενικό στοιχείο του πίνακα
με το αποτέλεσμα. Στα υπόλοιπα στοιχεία αυτού του
πίνακα εμφανίζονται οι λεγόμενες θήκες.
Οι θήκες αντιπροσωπεύουν έναν τρόπο να διαχωριστεί το που βρέθηκε σε ξεχωριστά μέρη. Για τη χρήση τους πρέπει να περικλείσετε μέρος της κανονικής έκφρασης σε στρογγυλές παρενθέσεις. Σε αυτήν την περίπτωση, στον πίνακα με το αποτέλεσμα εκτός από τη συμβολοσειρά που βρέθηκε, θα εμφανιστεί επίσης και αυτό που ταιριάζει στην κανονική έκφραση, που βρίσκεται σε αυτές τις παρενθέσεις.
Ας δοκιμάσουμε στην πράξη. Ας υποθέσουμε ότι έχουμε μια τέτοια συμβολοσειρά με ώρα:
let str = '12:34';
Ας βάλουμε τις ώρες και τα λεπτά από αυτήν την ώρα σε ξεχωριστές θήκες:
let res = str.match(/(\d+):(\d+)/);
Ας δούμε το αποτέλεσμα:
console.log(res[0]); // '12:34' - το που βρέθηκε
console.log(res[1]); // '12' - 1η θήκη
console.log(res[2]); // '34' - 2η θήκη
Δίνεται μια συμβολοσειρά που περιέχει domain:
let str = 'sss domain.ru zzz';
Βρείτε αυτό το domain και βάλτε το όνομά του στην πρώτη θήκη, και τη ζώνη - στη δεύτερη.
Δίνεται μια συμβολοσειρά που περιέχει ημερομηνία:
let str = '31.12.2025';
Βάλτε την ημέρα στην πρώτη θήκη, τον μήνα - στη δεύτερη, και το έτος - στην τρίτη.