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

জাভা রেগেক্স দিয়ে ওয়ার্ড ক্যারেক্টার ম্যাচ করা (\w)

ইংরেজি অ্যালফাবেট (দুটো কেস) এবং ডিজিট (0-9) — এগুলোকে ওয়ার্ড ক্যারেক্টার বলা হয়। এগুলো ম্যাচ করতে মেটাক্যারেক্টার "\\w" ব্যবহার করা হয়। এটি [a-zA-Z0-9_] এর সমতুল্য (আন্ডারস্কোরও ইনক্লুড)।

উদাহরণ ১: ৫টি ওয়ার্ড ক্যারেক্টার দিয়ে শুরু

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

public class Example {
    public static void main(String args[]) {
        System.out.println("একটি স্ট্রিং দিন:");
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();
        String regex = "^\\w{5}";
        
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(input);
        
        if (matcher.find()) {
            System.out.println("ম্যাচ হয়েছে");
        } else {
            System.out.println("ম্যাচ হয়নি");
        }
    }
}

আউটপুট ১

একটি স্ট্রিং দিন: hello
ম্যাচ হয়েছে

আউটপুট ২

একটি স্ট্রিং দিন: #how
ম্যাচ হয়নি

উদাহরণ ২: শুধু ওয়ার্ড ক্যারেক্টার থাকা স্ট্রিং যাচাই

import java.util.Scanner;

public class RegexExample {
    public static void main(String args[]) {
        // শুধু ওয়ার্ড ক্যারেক্টার (০ বা অধিক)
        String regex = "\\w*";
        System.out.println("ইনপুট ভ্যালু দিন: ");
        Scanner sc = new Scanner(System.in);
        String input = sc.nextLine();
        boolean bool = input.matches(regex);
        
        if (bool) {
            System.out.println("ম্যাচ হয়েছে");
        } else {
            System.out.println("ম্যাচ হয়নি");
        }
    }
}

আউটপুট

ইনপুট ভ্যালু দিন: *##&
ম্যাচ হয়নি

নোট: \\w আন্ডারস্কোর (_) কেও ম্যাচ করে। কেবল লেটার ও ডিজিট চাইলে [a-zA-Z0-9] ব্যবহার করুন।

  1. জাভা রেগেক্স দিয়ে স্ট্রিং/লাইন এর শেষ ম্যাচ করা ($)

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

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

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