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

জাভা রেগুলার এক্সপ্রেশন: ক্যারেক্টার ক্লাস — সাবট্র্যাকশন (Subtraction)


ক্যারেক্টার ক্লাস সাবট্র্যাকশন কী?

এক রেঞ্জ থেকে অন্য রেঞ্জ বিয়োগ করে নতুন রেঞ্জ তৈরি করা। জাভায় সরাসরি সাবট্র্যাকশন অপারেটর নেই, কিন্তু নিগেশন (^) এবং ইন্টারসেকশন (&&) কম্বাইন করে করা যায়।

সিনট্যাক্স

[range1&&[^range2]] — range1 থেকে range2 বাদ দিয়ে বাকি।

উদাহরণ: a-l থেকে e-h বাদ

[a-l&&[^e-h]]
// a-l: a,b,c,d,e,f,g,h,i,j,k,l
// ^e-h: e,f,g,h ছাড়া
// ফলাফল: a,b,c,d,i,j,k,l

কোড উদাহরণ

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

public class SubtractionExample {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("ইনপুট টেক্সট লিখুন: ");
        String input = sc.nextLine();
        
        // a-l থেকে e-h বাদ
        String regex = "[a-l&&[^e-h]]";
        
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(input);
        
        int count = 0;
        while (matcher.find()) {
            count++;
            System.out.print(matcher.group() + " ");
        }
        
        System.out.println("\nম্যাচ করা ক্যারেক্টার সংখ্যা: " + count);
    }
}

আউটপুট উদাহরণ

ইনপুট টেক্সট লিখুন: abcdefghijklmnopq
a b c d i j k l
ম্যাচ করা ক্যারেক্টার সংখ্যা: 8

আরও সাবট্র্যাকশন উদাহরণ

রেজেক্সবেস রেঞ্জবাদ দেওয়া রেঞ্জফলাফল
[a-z&&[^aeiou]]a-zaeiouব্যঞ্জনবর্ণ (consonants)
[0-9&&[^02468]]0-9ইভেন ডিজিটঅড ডিজিট (1,3,5,7,9)
[A-Z&&[^AEIOU]]A-Zবড় হাত স্বরবর্ণবড় হাত ব্যঞ্জনবর্ণ
[\p{Print}&&[^\p{Punct}]]প্রিন্টেবলপাঙ্কচুয়েশনঅ্যালফানিউমেরিক + স্পেস

সারসংক্ষেপ

ক্যারেক্টার ক্লাস সাবট্র্যাকশন `[base&&[^subtract]]` প্যাটার্ন ব্যবহার করে একটি রেঞ্জ থেকে অন্য রেঞ্জ বাদ দেওয়া যায়। এটি নিগেশন এবং ইন্টারসেকশনের কম্বিনেশন। ব্যঞ্জনবর্ণ, অড নম্বর, স্পেশাল-ক্যারেক্টার-ফ্রি সেট ইত্যাদি তৈরি করতে এটি খুব কাজে আসে।

  1. জাভা রেগুলার এক্সপ্রেশনে (?> re) সাব-এক্সপ্রেশন ব্যাখ্যা

  2. জাভা রেগুলার এক্সপ্রেশনে (?: re) সাব-এক্সপ্রেশন ব্যাখ্যা

  3. জাভা রেগুলার এক্সপ্রেশনে (re) সাব-এক্সপ্রেশন ব্যাখ্যা

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