⊗jsSpRERP 126 of 294 menu

Θήκες στη μέθοδο replace στις κανονικές εκφράσεις JavaScript

Όταν εργαζόμαστε με την μέθοδο replace, εάν βάλουμε κάτι σε μια θήκη στην κανονική έκφραση, τότε στη συμβολοσειρά αντικατάστασης μπορούμε να εισαγάγουμε το περιεχόμενο αυτής της θήκης γράφοντας το σύμβολο δολαρίου $ και τον αριθμό της θήκης. Για παράδειγμα, $1 - πρώτη θήκη, $2 - δεύτερη θήκη και ούτω καθεξής.

Γιατί αυτό είναι χρήσιμο και πώς να το χρησιμοποιήσουμε ας το δούμε με παραδείγματα.

Παράδειγμα

Ας βρούμε όλους τους αριθμούς και αντί για αυτούς ας εισάγουμε τους ίδιους αριθμούς, αλλά μέσα σε παρενθέσεις. Για αυτό όλους τους αριθμούς που βρίσκουμε θα αντικαθιστούμε με τους ίδιους, αλλά μέσα σε παρενθέσεις:

let str = '1 23 456 xax'; let res = str.replace(/(\d+)/g, '($1)');

Ως αποτέλεσμα στη μεταβλητή θα γραφτεί το εξής:

'(1) (23) (456) xax'

Παράδειγμα

Ας βρούμε όλες τις συμβολοσειρές που αντιπροσωπεύουν αριθμούς με γύρω τους 'x' και ας αντικαταστήσουμε αυτούς τους αριθμούς με τους ίδιους, αλλά με '!' γύρω τους:

let str = 'x1x x23x x456x xax'; let res = str.replace(/x(\d+)x/g, '!$1!');

Ως αποτέλεσμα στη μεταβλητή θα γραφτεί το εξής:

'!1! !23! !456! xax'

Παράδειγμα

Ας λύσουμε το ακόλουθο πρόβλημα: δίνονται συμβολοσειρές της μορφής 'aaa@bbb' - γράμματα, μετά @, μετά γράμματα. Πρέπει να ανταλλάξουμε τις θέσεις των γραμμάτων πριν το @ και μετά.

let str = 'aaa@bbb ccc@ddd'; let res = str.replace(/([a-z]+)@([a-z]+)/g, '$2@$1');

Ως αποτέλεσμα στη μεταβλητή θα γραφτεί το εξής:

'bbb@aaa ddd@ccc'

Πρακτικά προβλήματα

Δίνεται η συμβολοσειρά:

let str = '12 34 56 78';

Ανταλλάξτε τις θέσεις των ψηφίων σε όλους τους διψήφιους αριθμούς.

Δίνεται μια συμβολοσειρά με ημερομηνία:

let str = '31.12.2025';

Μετατρέψτε αυτήν την ημερομηνία σε '2025.12.31'.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη