रेगुलर एक्सप्रेशन का उपयोग करके विशेष वर्ण जांचना
Swift में यह जांचने के लिए कि कोई स्ट्रिंग विशेष वर्ण रखती है या नहीं, हम if-else या switch जैसे कंडीशनल का उपयोग कर सकते हैं लेकिन इसके लिए कई शर्तों को निष्पादित करने की आवश्यकता होगी, जिससे प्रोग्रामिंग के साथ-साथ निष्पादन समय भी अधिक लगेगा। इसलिए इस उदाहरण में हम देखेंगे कि रेगुलर एक्सप्रेशन और Swift द्वारा प्रदान की गई एक अन्य विधि का उपयोग करके समान कार्य कैसे किया जाए, जिससे यह जांचा जा सके कि कोई वर्ण कैरेक्टर सेट में मौजूद है या नहीं।
विधि 1: रेगुलर एक्सप्रेशन का उपयोग
आइए String का एक एक्सटेंशन बनाएं और उसमें निम्नलिखित कोड जोड़ें:
extension String {
var containsSpecialCharacter: Bool {
let regex = ".*[^A-Za-z0-9].*"
let testString = NSPredicate(format: "SELF MATCHES %@", regex)
return testString.evaluate(with: self)
}
}
हम निम्नलिखित कोड को उदाहरण के रूप में चला सकते हैं:
override func viewDidLoad() {
super.viewDidLoad()
print("3r42323".containsSpecialCharacter)
print("!--%332".containsSpecialCharacter)
}
आउटपुट
विधि 1 के लिए परिणाम यहां दिया गया है:

विधि 2: CharacterSet का उपयोग
let characterset = CharacterSet(charactersIn: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
if "3r42323".rangeOfCharacter(from: characterset.inverted) != nil {
print("true")
} else {
print("false")
}
if "!--%332".rangeOfCharacter(from: characterset.inverted) != nil {
print("true")
} else {
print("false")
}
आउटपुट
उत्पन्न परिणाम नीचे दिखाया गया है:
