VBScript এ RegExp (Regular Expression) একটি শক্তিশালী টুল, যা স্ট্রিং ম্যানিপুলেশন এবং প্যাটার্ন মেচিংয়ের জন্য ব্যবহৃত হয়। এটি ব্যবহার করে আপনি স্ট্রিংয়ে নির্দিষ্ট প্যাটার্ন খুঁজে বের করতে পারেন, স্ট্রিং যাচাই করতে পারেন বা স্ট্রিংয়ের কিছু অংশ প্রতিস্থাপন করতে পারেন। VBScript এ RegExp অবজেক্ট ব্যবহারের মাধ্যমে জটিল টেক্সট ম্যানিপুলেশন কাজগুলো সহজে করা সম্ভব।
RegExp অবজেক্টের জন্য VBScript এ Microsoft VBScript Regular Expressions লাইব্রেরি ব্যবহার করতে হয়, যা একটি শক্তিশালী প্যাটার্ন ম্যাচিং এবং স্ট্রিং প্রসেসিং টুল।
RegExp অবজেক্ট তৈরি করা
RegExp অবজেক্ট ব্যবহার করতে, প্রথমে এটি তৈরি করতে হবে:
Dim regEx
Set regEx = CreateObject("VBScript.RegExp")
এখানে, regEx একটি RegExp অবজেক্ট যা স্ট্রিং যাচাই এবং ম্যানিপুলেট করার জন্য ব্যবহৃত হবে।
RegExp অবজেক্টের গুণাবলী (Properties)
RegExp অবজেক্টের কিছু প্রধান গুণাবলী:
- IgnoreCase: এই গুণাবলীটি নির্ধারণ করে যে প্যাটার্নটি বড়-ছোট অক্ষরের পার্থক্য করবে কি না।
- Global: এই গুণাবলীটি নির্ধারণ করে যে প্যাটার্নটি স্ট্রিংয়ের প্রতিটি ম্যাচ খুঁজবে কি না, নাকি প্রথম মিল পেলেই থামবে।
- Multiline: এটি স্ট্রিংয়ের মধ্যে লাইনের শুরু এবং শেষ পয়েন্ট বুঝতে সাহায্য করে।
উদাহরণ:
regEx.IgnoreCase = True ' বড়-ছোট অক্ষরের পার্থক্য না করা
regEx.Global = True ' প্রতিটি ম্যাচ খুঁজে বের করা
regEx.Multiline = True ' মাল্টি-লাইন স্ট্রিং সমর্থন
RegExp অবজেক্টের মেথড (Methods)
RegExp অবজেক্টে কিছু গুরুত্বপূর্ণ মেথড রয়েছে, যেমন:
- Test: এই মেথডটি চেক করে যে, স্ট্রিংটি নির্দিষ্ট প্যাটার্নের সাথে মেলে কিনা।
- Execute: এই মেথডটি প্যাটার্ন অনুসারে স্ট্রিং খুঁজে বের করে এবং এর সাথে সম্পর্কিত ম্যাচগুলি ফিরিয়ে দেয়।
- Replace: এই মেথডটি নির্দিষ্ট প্যাটার্নটি প্রতিস্থাপন করার জন্য ব্যবহৃত হয়।
Test মেথড ব্যবহার
Test মেথডটি চেক করে যে স্ট্রিংটি RegExp প্যাটার্নের সাথে মেলে কিনা। এটি একটি বুলিয়ান মান (True বা False) রিটার্ন করে।
উদাহরণ:
Dim regEx, result
Set regEx = CreateObject("VBScript.RegExp")
regEx.IgnoreCase = True
regEx.Pattern = "hello" ' প্যাটার্ন সেট করা
' Test মেথড ব্যবহার
result = regEx.Test("Hello, world!")
If result Then
MsgBox "ম্যাচ পাওয়া গেছে!"
Else
MsgBox "ম্যাচ পাওয়া যায়নি!"
End If
এখানে, "Hello, world!" স্ট্রিংটি "hello" প্যাটার্নের সাথে মেলে, কারণ IgnoreCase সেট করা আছে, যার ফলে বড়-ছোট অক্ষরের পার্থক্য বিবেচনা করা হয়নি।
Execute মেথড ব্যবহার
Execute মেথডটি প্যাটার্ন অনুসারে স্ট্রিংয়ের মধ্যে মেচিং প্যাটার্নগুলি বের করে। এটি একটি MatchCollection অবজেক্ট রিটার্ন করে, যা সমস্ত ম্যাচগুলো ধারণ করে।
উদাহরণ:
Dim regEx, matches, match
Set regEx = CreateObject("VBScript.RegExp")
regEx.Pattern = "\d+" ' এক বা একাধিক ডিজিট
regEx.Global = True ' সব মেলা খুঁজে বের করা
' Execute মেথড ব্যবহার
Set matches = regEx.Execute("The number is 123 and 456")
' প্রতিটি ম্যাচ প্রদর্শন
For Each match In matches
MsgBox "ম্যাচ পাওয়া গেছে: " & match.Value
Next
এখানে, \d+ প্যাটার্নটি সব ডিজিট খুঁজে বের করবে এবং "The number is 123 and 456" স্ট্রিং থেকে দুটি ম্যাচ (123 এবং 456) পাওয়া যাবে।
Replace মেথড ব্যবহার
Replace মেথডটি একটি স্ট্রিংয়ে নির্দিষ্ট প্যাটার্নটি খুঁজে প্রতিস্থাপন করতে ব্যবহৃত হয়।
উদাহরণ:
Dim regEx, result
Set regEx = CreateObject("VBScript.RegExp")
regEx.Pattern = "apple" ' প্যাটার্ন
regEx.IgnoreCase = True ' বড়-ছোট অক্ষরের পার্থক্য না করা
' Replace মেথড ব্যবহার
result = regEx.Replace("I have an Apple and an apple.", "orange")
MsgBox result ' "I have an orange and an orange."
এখানে, "apple" শব্দটি "orange" দ্বারা প্রতিস্থাপিত হয়েছে, কারণ IgnoreCase সক্রিয় ছিল।
সারাংশ
VBScript এ RegExp অবজেক্ট স্ট্রিং যাচাই, প্যাটার্ন মেচিং এবং স্ট্রিং ম্যানিপুলেশন করার জন্য অত্যন্ত কার্যকরী। এটি Test, Execute, এবং Replace মেথডের মাধ্যমে স্ট্রিংয়ের নির্দিষ্ট প্যাটার্ন চেক করতে এবং সংশোধন করতে সহায়তা করে। RegExp অবজেক্টের গুণাবলী যেমন IgnoreCase, Global, এবং Multiline স্ট্রিং প্রসেসিংকে আরও উন্নত করে তোলে।
Read more