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

জাভা রেজেক্সে কেস-ইনসেনসিটিভ (case-insensitive) ম্যাচিং

Pattern ক্লাসের compile মেথড দুটি প্যারামিটার গ্রহণ করে:

  • রেগুলার এক্সপ্রেশন রিপ্রেজেন্ট করার একটি স্ট্রিং মান।
  • Pattern ক্লাসের একটি ফিল্ড যেটি ইন্টিজার মান।

Pattern ক্লাসের CASE_INSENSITIVE ফিল্ড কেস (uppercase/lowercase) নির্বিশেষে ক্যারেক্টার ম্যাচ করে। তাই, আপনার রেগুলার এক্সপ্রেশনের সাথে এই ফ্ল্যাগ ভ্যালুটি compile() মেথডে পাস করলে বড় এবং ছোট হাতের অক্ষর দুটোই ম্যাচ হবে।

উদাহরণ ১

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

public class Example {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter input data: ");
        String input = sc.nextLine();

        // தேட வேண்டிய க্যারக்டারের জন্য ரெகுலர் எக்ஸ்ப்ரெஷன்
        String regex = "test";

        // Pattern.CASE_INSENSITIVE ব্যবহার করা হয়নি (কমেন্টেড আউট)
        Pattern pattern = Pattern.compile(regex); // , Pattern.CASE_INSENSITIVE);
        Matcher matcher = pattern.matcher(input);
        int count = 0;
        while (matcher.find()) {
            count++;
        }
        System.out.println("Number of occurrences: " + count);
    }
}

আউটপুট

Enter input data: test TEST Test sample data
Number of occurrences: 3

উদাহরণ ২: Pattern.CASE_INSENSITIVE ব্যবহার করে বুলিয়ান ভ্যালিডেশন

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

public class VerifyBoolean {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter a string value: ");
        String str = sc.next();

        Pattern pattern = Pattern.compile("true|false", Pattern.CASE_INSENSITIVE);
        Matcher matcher = pattern.matcher(str);

        if(matcher.matches()){
            System.out.println("Given string is a boolean type");
        } else {
            System.out.println("Given string is not a boolean type");
        }
    }
}

আউটপুট

Enter a string value: TRUE
Given string is a boolean type
  1. জাভা রেগেক্স দিয়ে ক্যারেক্টার রেঞ্জ ম্যাচ করা

  2. জাভা রেগেক্স দিয়ে ফিক্সড সেট অফ ক্যারেক্টার ম্যাচ করা

  3. জাভা রেগেক্স দিয়ে যেকোনো ক্যারেক্টার ম্যাচ করা (.)

  4. জাভাতে রেগেক্স ব্যবহার করে স্ট্রিং থেকে HTML ট্যাগ এক্সট্র্যাক্ট করা