आप इस कार्य को प्राप्त करने के लिए नियमित अभिव्यक्तियों का उपयोग कर सकते हैं। यह सत्यापित करने के लिए कि स्ट्रिंग में केवल लेटर्स, नंबर्स, अंडरस्कोर और डैश हैं, हम निम्न regex का उपयोग कर सकते हैं: "^[A-Za-z0-9_-]*$"।
उदाहरण
import re
print(bool(re.match("^[A-Za-z0-9_-]*$", 'aValidString123--__')))
print(bool(re.match("^[A-Za-z0-9_-]*$", 'inv@lid')))
आउटपुट
True False
आप सेट्स का उपयोग करके भी यही परिणाम प्राप्त कर सकते हैं। उन कैरेक्टर्स का उपयोग करके एक सेट घोषित करें जिन्हें आप अनुमति देना चाहते हैं और निम्न कोड का उपयोग करें -
उदाहरण
from sets import Set
allowed_chars = Set('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-')
validationString = 'inv@lid'
if Set(validationString).issubset(allowed_chars):
print(True)
else:
print(False)
आउटपुट
यह आपको परिणाम देगा -
False