একটি নমুনা মেলে অক্ষরগুলি মুছে ফেলা

Visual Basic for Applications:
একটি নমুনা মেলে অক্ষরগুলি মুছে ফেলা

কিভাবে:

VBA এ, আপনি Replace ফাংশন বা নিয়মিত অভিব্যক্তিগুলি (regular expressions) ব্যবহার করে প্যাটার্নের সাথে মিলে যাওয়া অক্ষরগুলি মুছে ফেলতে পারেন। এখানে উভয় পদ্ধতির উদাহরণ রয়েছে:

Replace ফাংশন ব্যবহার করে

Replace ফাংশন নির্দিষ্ট অক্ষর বা সিকোয়েন্স সরানোর জন্য সোজা পথ।

Sub DeleteSpecificChars()
    Dim originalString As String
    originalString = "123-ABC-456-XYZ"
    
    ' হাইফেন মুছে ফেলা
    Dim resultString As String
    resultString = Replace(originalString, "-", "")
    
    Debug.Print originalString ' আগে: 123-ABC-456-XYZ
    Debug.Print resultString ' পরে: 123ABC456XYZ
End Sub

নিয়মিত অভিব্যক্তি ব্যবহার করে

জটিল প্যাটার্নের জন্য, নিয়মিত অভিব্যক্তিগুলি একটি শক্তিশালী বিকল্প প্রদান করে।

প্রথমে, মাইক্রোসফ্ট VBScript নিয়মিত অভিব্যক্তি লাইব্রেরি সক্রিয় করুন ভিজ্যুয়াল বেসিক এডিটরের Tools > References এর মাধ্যমে।

Sub DeletePatternChars()
    Dim regEx As Object
    Set regEx = CreateObject("VBScript.RegExp")
    
    Dim strPattern As String
    strPattern = "\d" ' সংখ্যাগুলির সাথে মেলে এমন প্যাটার্ন
    
    With regEx
        .Global = True
        .IgnoreCase = True
        .Pattern = strPattern
    End With
    
    Dim originalString As String
    originalString = "Remove 123 and 456"
    
    ' মিলগুলি মুছে ফেলতে Replace পদ্ধতি ব্যবহার করা
    Dim resultString As String
    resultString = regEx.Replace(originalString, "")
    
    Debug.Print originalString ' আগে: Remove 123 and 456
    Debug.Print resultString ' পরে: Remove  and 
End Sub

গভীর ডুব

ঐতিহাসিকভাবে, VBA তে প্যাটার্ন মেলানো এবং স্ট্রিং হেরফেরের সুযোগ সীমাবদ্ধ ছিল, বিশেষ করে যখন আরও আধুনিক প্রোগ্রামিং ভাষাগুলিকে তুলনা করা হয় যেগুলি এই কাজের জন্য ব্যাপক স্ট্যান্ডার্ড লাইব্রেরি অফার করে। Replace ফাংশন সরাসরি পরিবর্তনের জন্য সহজ এবং কার্যকরী কিন্তু জটিল প্যাটার্ন মেলানোর জন্য নমনীয়তা অভাব ছিল। এখানেই নিয়মিত অভিব্যক্তি (RegEx) প্রবেশ করে, যা প্যাটার্ন মেলানো এবং স্ট্রিং হেরফেরের জন্য অনেক সমৃদ্ধ সিনট্যাক্স প্রদান করে। যাইহোক, VBA তে RegEx এর সাথে কাজ অতিরিক্ত সেটআপ প্রয়োজন, যেমন মাইক্রোসফ্ট VBScript নিয়মিত অভিব্যক্তি রেফারেন্স সক্রিয় করা, যা নতুন ব্যবহারকারীদের জন্য একটি বাধা হতে পারে।

এসব সীমাবদ্ধতা সত্ত্বেও, VBA তে RegEx সমর্থনের পরিচয় একটি গুরুত্বপূর্ণ অগ্রগতি ছিল, যা টেক্সট প্রক্রিয়াজাতকরণ নিয়ে কাজ করা প্রোগ্রামারদের জন্য আরও শক্তিশালী টুল প্রদান করে। জটিল সিনারিওতে যেখানে বিল্ট-ইন স্ট্রিং ফাংশন পর্যাপ্ত নয়, নিয়মিত অভিব্যক্তিগুলি একটি বহুমুখী এবং শক্তিশালী বিকল্প প্রদান করে।

উল্লেখ্য, যারা পারফরমেন্স সমালোচনামূলক পরিবেশ বা প্রকল্পে কাজ করছেন, বাইরের লাইব্রেরি ব্যবহার করা অথবা অন্যান্য প্রোগ্রামিং ভাষা সহ ইন্টিগ্রেট করা আরও ভাল পারফরমেন্স এবং বৈশিষ্ট্য প্রদান করতে পারে। তবে, VBA তে দৈনন্দিন কাজের জন্য, এই নেটিভ পদ্ধতিগুলি একটি ব্যবহারিক এবং অ্যাক্সেসযোগ্য পছন্দ হয়ে থাকে।