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

জাভা রেগুলার এক্সপ্রেশনে re* মেটাক্যারেক্টার ব্যাখ্যা

সাবএক্সপ্রেশন/মেটাক্যারেক্টার "re*" পূর্ববর্তী এক্সপ্রেশনের ০ বা অধিক (০+) ওকারেন্স ম্যাচ করে।

উদাহরণ ১: "aabc*" প্যাটার্ন

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

public class RegexExample {
    public static void main(String args[]) {
        String regex = "aabc*";
        String input = "aabcabcaabcabbcaabcbcaabc";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(input);
        int count = 0;
        while (m.find()) {
            count++;
        }
        System.out.println("ম্যাচের সংখ্যা: " + count);
    }
}

আউটপুট

ম্যাচের সংখ্যা: 4

ব্যাখ্যা: aabc* মানে "aab" এবং তারপর 'c' ০ বা অধিক বার। ইনপুটে "aabc" (১টি c), "aab" (০টি c), "aabc" (১টি c), "aabcc" (২টি c) — মোট ৪বার ম্যাচ করেছে।

উদাহরণ ২: ডিজিট ধারণকারী স্ট্রিং খুঁজা

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

public class MatchAllCharacters {
    public static void main(String args[]) {
        String regex = "(.*)?(\\d+)";
        Scanner sc = new Scanner(System.in);
        System.out.println("৫টি ইনপুট স্ট্রিং দিন: ");
        String input[] = new String[5];
        for (int i = 0; i < 5; i++) {
            input[i] = sc.nextLine();
        }
        
        Pattern p = Pattern.compile(regex);
        System.out.println("ডিজিট ধারণকারী স্ট্রিংগুলো: ");
        for (int i = 0; i < 5; i++) {
            Matcher m = p.matcher(input[i]);
            if (m.matches()) {
                System.out.println(m.group());
            }
        }
    }
}

আউটপুট

test data hello how are you 335 welcome to Tutorialspoint
ডিজিট ধারণকারী স্ট্রিংগুলো:
sample text 1
hello how are you 335

তুলনা: * = ০ বা অধিক, + = ১ বা অধিক, ? = ০ বা ১।

  1. জাভা রেগুলার এক্সপ্রেশনে [^...] কনস্ট্রাক্ট ব্যাখ্যা

  2. জাভা রেগুলার এক্সপ্রেশনে . (ডট) মেটাক্যারেক্টার ব্যাখ্যা

  3. জাভা রেগুলার এক্সপ্রেশনে $ (ডলার) মেটাক্যারেক্টার ব্যাখ্যা

  4. জাভা রেগুলার এক্সপ্রেশনে ^ (ক্যারেরট) মেটাক্যারেক্টার ব্যাখ্যা