Sobes.tech
Junior

Τι είναι οι κανονικές εκφράσεις;

sobes.tech AI

Απάντηση από AI

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

Τα βασικά στοιχεία των κανονικών εκφράσεων:

  • Λιτές χαρακτήρες: Κανονικοί χαρακτήρες που αντιστοιχούν στον εαυτό τους (π.χ., 'a', ',').
  • Μετα-χαρακτήρες: Χαρακτήρες με ειδική σημασία, π.χ.:
    • .: οποιοσδήποτε χαρακτήρας εκτός από το νέο γραμμή.
    • *: μηδέν ή περισσότερες επαναλήψεις του προηγούμενου στοιχείου.
    • +: μία ή περισσότερες επαναλήψεις του προηγούμενου στοιχείου.
    • ?: μηδέν ή μία επανάληψη του προηγούμενου στοιχείου.
    • ^: αρχή της συμβολοσειράς.
    • $: τέλος της συμβολοσειράς.
    • []: κλάση χαρακτήρων (οποιοσδήποτε χαρακτήρας μέσα στα αγκύλες).
    • |: ή (εναλλακτική μεταξύ προτύπων).
    • (): ομαδοποίηση.
  • Ακολουθίες διαφυγής: Συνδυασμοί χαρακτήρων που ξεκινούν με \ (π.χ., \d για ψηφίο, \s για λευκό χώρο).

Στη Swift, οι κανονικές εκφράσεις υλοποιούνται με τη χρήση της κλάσης NSRegularExpression ή, πιο σύγχρονα, Regex.

Παράδειγμα χρήσης του Regex στη Swift:

// Αναζήτηση όλων των ψηφίων σε μια συμβολοσειρά
let text = "Hello 123 World 456"
let regex = try? Regex("\\d+")

let matches = text.matches(of: regex!)
for match in matches {
    print("Βρέθηκαν αριθμοί: \(match.output)")
}

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