Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jsSpREStri 134 of 294 menu
◀ ▶

Στροφή με κανονικές εκφράσεις στην JavaScript

Οι κανονικές εκφράσεις μπορούν να αναπαρασταθούν ως συμβολοσειρές. Αυτό είναι βολικό στην περίπτωση που χρειάζεται να κάνετε εισαγωγές μεταβλητών στις κανονικές εκφράσεις, ή να τις δημιουργήσετε δυναμικά.

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

let str = 'img.png';

Ας υποθέσουμε ότι σε αυτήν τη συμβολοσειρά εφαρμόζουμε την ακόλουθη κανονική έκφραση:

let reg = /\.(png|jpg)$/; let res = str.match(reg);

Ας ξαναγράψουμε αυτήν την κανονική έκφραση ως συμβολοσειρά. Αυτό γίνεται χρησιμοποιώντας το ειδικό αντικείμενο RegExp:

let reg = new RegExp('\.(png|jpg)$'); let res = str.match(reg);

Ας βγάλουμε τώρα ένα μέρος της κανονικής έκφρασης σε μια μεταβλητή και ας το εισάγουμε χρησιμοποιώντας συνένωση:

let pat = 'png|jpg'; let reg = new RegExp('\.(' + pat + ')$'); let res = str.match(reg);

Και τώρα ας εισάγουμε τη μεταβλητή χρησιμοποιώντας πρότυπες συμβολοσειρές:

let pat = 'png|jpg'; let reg = new RegExp(`\.(${pat})$`); let res = str.match(reg);

Και τώρα ας δημιουργήσουμε ένα μέρος της κανονικής έκφρασης από έναν πίνακα:

let exts = ['png', 'jpg']; let pat = exts.join('|'); let reg = new RegExp(`\.(${pat})$`); let res = str.match(reg);

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

Βγάλτε τα ονόματα των ζωνών domain σε μια ξεχωριστή μεταβλητή:

let reg = /^[a-z]+\.(ru|by|ua)$/; let res = reg.test(str);

Τροποποιήστε το προηγούμενο πρόβλημα λαμβάνοντας υπόψη ότι οι ζώνες domain αποθηκεύονται ως πίνακας:

let arr = ['ru', 'by', 'ua'];
← →
↑
Ελληνικά▼
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 για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη