Sobes.tech
Junior — Middle

Μπορείτε να εξηγήσετε τι είναι μια κανονική έκφραση και πώς χρησιμοποιείται για την αναζήτηση και επεξεργασία κειμένου;

sobes.tech AI

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

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

Στο iOS, για εργασία με κανονικές εκφράσεις, χρησιμοποιείται η κλάση NSRegularExpression. Με αυτήν, μπορείτε να βρείτε αντιστοιχίσεις, να αντικαταστήσετε κείμενο και να επικυρώσετε συμβολοσειρές.

Παράδειγμα αναζήτησης όλων των αριθμών σε μια συμβολοσειρά Swift:

let text = "Τιμή: 100, έκπτωση: 20%"
let pattern = "\\d+"
let regex = try! NSRegularExpression(pattern: pattern)
let matches = regex.matches(in: text, range: NSRange(text.startIndex..., in: text))
for match in matches {
    if let range = Range(match.range, in: text) {
        print(text[range])  // Θα εμφανίσει "100" και "20"
    }
}