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

জাভা রেজেক্স ব্যবহার করে প্রতিটি শব্দের প্রথম অক্ষর বের করা

মেটা ক্যারেক্টার \b ওয়ার্ড বাউন্ডারি (word boundary) ম্যাচ করে এবং [a-zA-Z] ইংরেজি বর্ণমালার একটি ক্যারেক্টার ম্যাচ করে (উভয় কেস)। সংক্ষেপে, এক্সপ্রেশন \b[a-zA-Z] প্রতিটি ওয়ার্ড বাউন্ডারির পরে ইংরেজি বর্ণমালার একটি একক ক্যারেক্টার (উভয় কেস) ম্যাচ করে।

তাই, প্রতিটি শব্দের প্রথম অক্ষর পেতে:

  • উপরোক্ত এক্সপ্রেশনটি Pattern ক্লাসের compile() মেথডে কম্পাইল করুন।
  • Pattern ক্লাসের matcher() মেথডে ইনপুট স্ট্রিং পাস করে Matcher অবজেক্ট পান।
  • শেষে, প্রতিটি ম্যাচের জন্য group() মেথড কল করে মিলে যাওয়া ক্যারেক্টারগুলো পান।

উদাহরণ

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

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

        String regex = "\\b[a-zA-Z]";

        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(data);

        System.out.println("First letter of each word from the given string: ");
        while(matcher.find()) {
            System.out.print(matcher.group() + " ");
        }
    }
}

আউটপুট

Enter sample text: National Intelligence Agency Research & Analysis Wing
First letter of each word from the given string: N I A R A W
  1. জাভা রেগুলার এক্সপ্রেশনে ডিজিট ম্যাচ করা (\d)

  2. জাভাতে স্ট্রিং-এর প্রতিটি শব্দের প্রথম অক্ষর প্রিন্ট করা

  3. পাইথন রেগুলার এক্সপ্রেশন ব্যবহার করে ওয়ার্ড ম্যাচ করার পদ্ধতি

  4. জাভাতে রেগুলার এক্সপ্রেশন ব্যবহার করে স্ট্রিং থেকে নম্বর বের করা