ভিবিস্ক্রিপ্ট (VBScript) ব্যবহার করে কাস্টম ফিল্টার এবং ভ্যালিডেশন টুল তৈরি করা খুবই কার্যকরী হতে পারে। এটি ডেটা ইনপুট যাচাই (validation) এবং কিছু নির্দিষ্ট শর্তে ফিল্টারিংয়ের জন্য ব্যবহৃত হয়, যেমন: টেক্সট ফিল্টার, নম্বর যাচাই, এবং ইমেইল বা ফোন নম্বর ফর্ম্যাট যাচাই।
এই টুলগুলি সাধারণত ব্যবহারকারীর ইনপুট যাচাই এবং প্রয়োজনীয় ফিল্টার প্রয়োগ করার জন্য ব্যবহার করা হয়, যাতে ভুল বা অপ্রাসঙ্গিক ডেটা ডাটাবেসে জমা না পড়ে।
১. কাস্টম ফিল্টার তৈরি করা (Creating Custom Filters)
ফিল্টারগুলি ব্যবহৃত হয় ডেটা থেকে নির্দিষ্ট মান বের করার জন্য। ভিবিস্ক্রিপ্টে ফিল্টার তৈরি করতে সাধারণত লজিক্যাল অপারেটর এবং রেগুলার এক্সপ্রেশন (Regular Expressions) ব্যবহার করা হয়।
উদাহরণ: শুধু সংখ্যাই যাচাই করা (Filter Only Numbers)
এখানে, আমরা এমন একটি কাস্টম ফিল্টার তৈরি করবো যা ইনপুট থেকে শুধু সংখ্যাগুলি বের করবে এবং যেকোনো অক্ষর বা স্পেস বাদ দেবে।
Function FilterNumbers(inputText)
Dim filteredText
filteredText = ""
' ইনপুটের প্রতিটি ক্যারেক্টার চেক করা
For i = 1 To Len(inputText)
If Mid(inputText, i, 1) >= "0" And Mid(inputText, i, 1) <= "9" Then
filteredText = filteredText & Mid(inputText, i, 1)
End If
Next
FilterNumbers = filteredText
End Function
' ইনপুট চেক করা
Dim userInput
userInput = "abc123def456"
Dim result
result = FilterNumbers(userInput)
MsgBox "Filtered Numbers: " & result ' আউটপুট: "123456"
এখানে, FilterNumbers ফাংশনটি শুধুমাত্র সংখ্যাগুলি বের করে এবং বাকী অক্ষরগুলি বাদ দেয়।
২. ভ্যালিডেশন টুলস তৈরি করা (Creating Validation Tools)
ভ্যালিডেশন টুলগুলি সাধারণত ইনপুটের সঠিকতা যাচাই করার জন্য ব্যবহৃত হয়। এটি টেক্সট, ইমেইল, ফোন নম্বর, তারিখ ইত্যাদি যাচাই করতে ব্যবহৃত হতে পারে।
উদাহরণ: ইমেইল ঠিকানা যাচাই (Email Validation)
ভিবিস্ক্রিপ্টে ইমেইল ঠিকানা যাচাই করার জন্য রেগুলার এক্সপ্রেশন (Regular Expression) ব্যবহার করা যেতে পারে।
Function ValidateEmail(email)
Dim regex, matches
Set regex = New RegExp
' ইমেইল ফরম্যাট যাচাই করার জন্য রেগুলার এক্সপ্রেশন
regex.IgnoreCase = True
regex.Global = True
regex.Pattern = "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$"
' রেগুলার এক্সপ্রেশন দিয়ে মেল খুঁজে বের করা
Set matches = regex.Execute(email)
If matches.Count > 0 Then
ValidateEmail = True
Else
ValidateEmail = False
End If
End Function
' ইনপুট চেক করা
Dim userEmail
userEmail = "test@example.com"
If ValidateEmail(userEmail) Then
MsgBox "Valid email!"
Else
MsgBox "Invalid email!"
End If
এখানে, ValidateEmail ফাংশনটি রেগুলার এক্সপ্রেশন ব্যবহার করে একটি সঠিক ইমেইল ফরম্যাট যাচাই করে।
৩. ফোন নম্বর ভ্যালিডেশন (Phone Number Validation)
ভিবিস্ক্রিপ্টে ফোন নম্বরের জন্য একটি সাধারণ ভ্যালিডেশন টুল তৈরি করা যেতে পারে, যা নির্দিষ্ট সংখ্যক ডিজিটের ফোন নম্বর গ্রহণ করবে।
উদাহরণ: ফোন নম্বর ভ্যালিডেশন
Function ValidatePhoneNumber(phoneNumber)
' ফোন নম্বরের জন্য রেগুলার এক্সপ্রেশন
Dim regex, matches
Set regex = New RegExp
regex.IgnoreCase = True
regex.Global = True
regex.Pattern = "^\+?\d{10,15}$" ' ফোন নম্বরের জন্য ১০-১৫ ডিজিট এবং ঐচ্ছিক + সাইন
' রেগুলার এক্সপ্রেশন দিয়ে মেল খুঁজে বের করা
Set matches = regex.Execute(phoneNumber)
If matches.Count > 0 Then
ValidatePhoneNumber = True
Else
ValidatePhoneNumber = False
End If
End Function
' ফোন নম্বর চেক করা
Dim userPhoneNumber
userPhoneNumber = "+1234567890"
If ValidatePhoneNumber(userPhoneNumber) Then
MsgBox "Valid phone number!"
Else
MsgBox "Invalid phone number!"
End If
এখানে, ফোন নম্বর ভ্যালিডেশন করার জন্য একটি রেগুলার এক্সপ্রেশন ব্যবহার করা হয়েছে, যা ১০ থেকে ১৫ ডিজিটের ফোন নম্বর যাচাই করে।
৪. তারিখ ফরম্যাট ভ্যালিডেশন (Date Format Validation)
এছাড়াও, আপনি ইনপুট তারিখ যাচাই করতে পারেন। নিচে একটি উদাহরণ দেয়া হলো যা শুধুমাত্র সঠিক DD/MM/YYYY ফরম্যাটে তারিখ গ্রহণ করবে।
উদাহরণ: তারিখ ফরম্যাট ভ্যালিডেশন
Function ValidateDate(inputDate)
Dim regex, matches
Set regex = New RegExp
' তারিখের সঠিক ফরম্যাট যাচাই (DD/MM/YYYY)
regex.IgnoreCase = True
regex.Global = True
regex.Pattern = "^(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[0-2])/\d{4}$"
' রেগুলার এক্সপ্রেশন দিয়ে মেল খুঁজে বের করা
Set matches = regex.Execute(inputDate)
If matches.Count > 0 Then
ValidateDate = True
Else
ValidateDate = False
End If
End Function
' তারিখ চেক করা
Dim userDate
userDate = "25/12/2024"
If ValidateDate(userDate) Then
MsgBox "Valid date!"
Else
MsgBox "Invalid date!"
End If
এখানে, DD/MM/YYYY ফরম্যাটের তারিখ যাচাই করতে রেগুলার এক্সপ্রেশন ব্যবহার করা হয়েছে।
সারাংশ
VBScript ব্যবহার করে আপনি কাস্টম ফিল্টার এবং ভ্যালিডেশন টুল তৈরি করতে পারেন। এতে:
- কাস্টম ফিল্টার ব্যবহার করে ইনপুট থেকে অপ্রয়োজনীয় বা অপ্রাসঙ্গিক ডেটা ফিল্টার করা যায়।
- ভ্যালিডেশন টুল ব্যবহার করে ইনপুটের সঠিকতা নিশ্চিত করা যায়, যেমন ইমেইল ঠিকানা, ফোন নম্বর বা তারিখ ফরম্যাট যাচাই।
এই কাস্টম ফিল্টার এবং ভ্যালিডেশন টুলগুলি ব্যবহারকারীর ইনপুট যাচাই এবং সঠিক ডেটা নিশ্চিত করার জন্য অত্যন্ত গুরুত্বপূর্ণ।
Read more