কম্পিউটার টিউটোরিয়াল

জাভায় Matcher useAnchoringBounds() মেথড উদাহরণসহ ব্যাখ্যা

java.util.regex.Matcher ক্লাস विभिन्न ম্যাচ অপারেশন সম্পাদন করার একটি ইঞ্জিন প্রতিনিধিত্ব করে। এই ক্লাসের কোনো কনস্ট্রাক্টর নেই, আপনি java.util.regex.Pattern ক্লাসের matches() মেথড ব্যবহার করে এই ক্লাসের অবজেক্ট তৈরি/প্রाप्त করতে পারেন।

অ্যানকরিং বাউন্ডস (Anchoring bounds) অঞ্চলের ম্যাচ যেমন ^ এবং $ মিলাতে ব্যবহৃত হয়। ডিফল্টভাবে, একটি ম্যাচার অ্যানকরিং বাউন্ডস ব্যবহার করে।

useAnchoringBounds() মেথড একটি বুলিয়ান মান গ্রহণ করে এবং, আপনি যদি এই মেথডে true পাস করেন তবে বর্তমান ম্যাচার অ্যানকরিং বাউন্ডস ব্যবহার করে এবং আপনি যদি false পাস করেন তবে এটি নন-অ্যানকরিং বাউন্ডস ব্যবহার করে।

উদাহরণ ১

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Trail {
    public static void main(String args[]) {
        // স্ট্রিং মান পড়া
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter input string");
        String input = sc.nextLine();
        
        // অঙ্ক খুঁজতে রেগুলার এক্সপ্রেশন
        String regex = ".*\\d+.*";
        
        // রেগুলার এক্সপ্রেশন কম্পাইল
        Pattern pattern = Pattern.compile(regex);
        
        // কম্পাইল করা রেগুলার এক্সপ্রেশন প্রিন্ট
        System.out.println("Compiled regular expression: " + pattern.toString());
        
        // Matcher অবজেক্ট পাওয়া
        Matcher matcher = pattern.matcher(input);
        matcher.useAnchoringBounds(false);
        boolean hasBounds = matcher.hasAnchoringBounds();
        
        if(hasBounds) {
            System.out.println("Current matcher uses anchoring bounds");
        } else {
            System.out.println("Current matcher uses non-anchoring bounds");
        }
    }
}

আউটপুট

Enter input string sample
Compiled regular expression: .*\d+.*
Current matcher uses non-anchoring bounds

উদাহরণ ২

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Sample {
    public static void main(String args[]) {
        String regex = "^<foo>.*";
        String input = "<foo><bar>";//Hi</i></br> welcome to Tutorialspoint";
        
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(input);
        matcher = matcher.useAnchoringBounds(false);
        
        if(matcher.matches()) {
            System.out.println("Match found");
        } else {
            System.out.println("Match not found");
        }
        
        System.out.println("Has anchoring bounds: " + matcher.hasAnchoringBounds());
    }
}

আউটপুট

Match found
Has anchoring bounds: false
  1. জাভাতে Pattern pattern() মেথড - উদাহরণ সহ ব্যাখ্যা

  2. জাভাতে Pattern.matcher() মেথড - উদাহরণ সহ ব্যাখ্যা

  3. জাভাতে Matcher matches() মেথড - উদাহরণ সহ ব্যাখ্যা

  4. জাভাতে Matcher start() মেথড - উদাহরণ সহ ব্যাখ্যা