পাইথনে এটি চেক করার সবচেয়ে সহজ পদ্ধতি হলো রেগুলার এক্সপ্রেশন ব্যবহার করা। দেওয়া স্ট্রিং-এ কমপক্ষে একটি অক্ষর এবং একটি সংখ্যা আছে কিনা তা চেক করতে, আমরা re.match(regex, string) ব্যবহার করি।
উদাহরণ
import re
print(bool(re.match('^(?=.*[0-9]$)(?=.*[a-zA-Z])', 'hasAlphanum123')))
print(bool(re.match('^(?=.*[0-9])(?=.*[a-zA-Z]$)', 'some string')))
আউটপুট
True False
?= সিনট্যাক্স রেগুলার এক্সপ্রেশন-এ লুকঅহেড কল করতে ব্যবহৃত হয়। লুকঅহেডে আসলে স্ট্রিং-এ করেন্ট পজিশন থেকে आगे লুক করে দেওয়া স্ট্রিং-এ ম্যাচ খুঁজে। আপনি এর সম্পর্কে আরও জানতে পারেন এখানে।
আমরা একই কাজ সিম্পল ফর লুপ এবং ২টি ফ্ল্যাগ দিয়েও করতে পারি।
উদাহরণ
def validateString(s):
letter_flag = False
number_flag = False
for i in s:
if i.isalpha():
letter_flag = True
if i.isdigit():
number_flag = True
return letter_flag and number_flag
print(validateString('hasAlphanum23'))
print(validateString('some string'))
আউটপুট
এটি আমাদের নিচের আউটপুট দেবে -
True False