Matches অপারেটর দিয়ে ডেটা যাচাই করা

Regular Expressions এবং Matches অপারেটর - স্প্রিং এক্সপ্রেশন ল্যাঙ্গুয়েজ (Spring Expression Language) - Java Technologies

277

Spring Expression Language (SpEL) হল একটি শক্তিশালী এক্সপ্রেশন ভাষা যা স্প্রিং কনফিগারেশন এবং কোডে ডাইনামিক এক্সপ্রেশন এবং লজিক ব্যবহার করতে সাহায্য করে। SpEL-এর matches অপারেটরটি দিয়ে আপনি স্ট্রিংগুলোর সাথে প্যাটার্ন ম্যাচ করতে পারেন। এটি Regular Expressions (Regex) ব্যবহার করে স্ট্রিংয়ের প্যাটার্ন যাচাই করতে সহায়ক।

matches অপারেটর:

  • matches অপারেটরটি একটি স্ট্রিংকে একটি রেগুলার এক্সপ্রেশনের সাথে তুলনা করে এবং যদি স্ট্রিংটি প্যাটার্নের সাথে মিলে যায়, তবে এটি true রিটার্ন করে, অন্যথায় false রিটার্ন করে।
  • এটি স্প্রিং কনফিগারেশন বা কোডে ডাইনামিক ভ্যালু যাচাই করার জন্য ব্যবহার করা হয়।

Maven বা Gradle কনফিগারেশন

Maven কনফিগারেশন:

SpEL এবং স্প্রিং কনটেক্সট ব্যবহার করতে Maven প্রজেক্টে নিচের ডিপেনডেন্সি যোগ করুন:

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.3.12</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-expression</artifactId>
        <version>5.3.12</version>
    </dependency>
</dependencies>

Gradle কনফিগারেশন:

dependencies {
    implementation 'org.springframework:spring-context:5.3.12'
    implementation 'org.springframework:spring-expression:5.3.12'
}

matches অপারেটর দিয়ে স্ট্রিং যাচাই করা

স্প্রিং এক্সপ্রেশন ল্যাঙ্গুয়েজ (SpEL) ব্যবহার করে matches অপারেটর দিয়ে স্ট্রিং প্যাটার্ন যাচাই করার জন্য একটি সহজ উদাহরণ দেখানো হবে। উদাহরণস্বরূপ, আমরা একটি স্ট্রিং যাচাই করব যা একটি ইমেইল অ্যাড্রেসের ফরম্যাটের সাথে মেলে কিনা।

Step 1: SpEL matches অপারেটর ব্যবহার

<bean id="emailValidator" class="java.lang.String">
    <constructor-arg value="#{'test@example.com'.matches('[a-zA-Z0-9_]+@[a-zA-Z0-9]+\\.[a-zA-Z]{2,3}')}"/>
</bean>

এখানে, #{'test@example.com'.matches('[a-zA-Z0-9_]+@[a-zA-Z0-9]+\\.[a-zA-Z]{2,3}')} এক্সপ্রেশনটি matches অপারেটর ব্যবহার করে ইমেইল অ্যাড্রেসটি যাচাই করছে যে এটি একটি বৈধ ইমেইল ফরম্যাটে আছে কিনা।

Step 2: SpEL matches অপারেটর দিয়ে স্ট্রিং যাচাই (Java কোডে)

Java কোডে SpEL দিয়ে matches অপারেটর ব্যবহার করে স্ট্রিং প্যাটার্ন যাচাই করতে হবে। এখানে, আমরা একটি ইমেইল যাচাই করব।

import org.springframework.expression.ExpressionParser;
import org.springframework.expression.spel.standard.SpelExpressionParser;
import org.springframework.expression.spel.support.StandardEvaluationContext;

public class SpELMatchesExample {
    public static void main(String[] args) {
        // ExpressionParser তৈরি করা
        ExpressionParser parser = new SpelExpressionParser();
        StandardEvaluationContext context = new StandardEvaluationContext();

        // SpEL এক্সপ্রেশন
        String email = "test@example.com";
        boolean isValidEmail = parser.parseExpression("#email.matches('[a-zA-Z0-9_]+@[a-zA-Z0-9]+\\.[a-zA-Z]{2,3}')").getValue(context, Boolean.class);

        System.out.println("Is valid email: " + isValidEmail);  // Output: true
    }
}

এখানে, SpEL এক্সপ্রেশন #email.matches('[a-zA-Z0-9_]+@[a-zA-Z0-9]+\\.[a-zA-Z]{2,3}') ব্যবহার করে যাচাই করা হচ্ছে যে "test@example.com" একটি বৈধ ইমেইল অ্যাড্রেস কিনা।


Matches অপারেটর দিয়ে অন্যান্য প্যাটার্ন যাচাই

SpEL এর matches অপারেটর দিয়ে আরও বিভিন্ন প্যাটার্ন যাচাই করা যায়, যেমন নামের ফরম্যাট, ফোন নাম্বারের ফরম্যাট ইত্যাদি। নিচে একটি উদাহরণ দেওয়া হলো যেখানে একটি ফোন নাম্বার যাচাই করা হচ্ছে:

Step 3: SpEL দিয়ে ফোন নাম্বার যাচাই

public class SpELPhoneNumberExample {
    public static void main(String[] args) {
        ExpressionParser parser = new SpelExpressionParser();
        StandardEvaluationContext context = new StandardEvaluationContext();

        // SpEL এক্সপ্রেশন
        String phoneNumber = "123-456-7890";
        boolean isValidPhone = parser.parseExpression("#phoneNumber.matches('\\d{3}-\\d{3}-\\d{4}')").getValue(context, Boolean.class);

        System.out.println("Is valid phone number: " + isValidPhone);  // Output: true
    }
}

এখানে, SpEL এক্সপ্রেশন #phoneNumber.matches('\\d{3}-\\d{3}-\\d{4}') ব্যবহার করে "123-456-7890" ফোন নাম্বারটি যাচাই করা হচ্ছে যে এটি সঠিক ফরম্যাটে আছে কিনা।


matches অপারেটরের সুবিধা

  1. ডাইনামিক প্যাটার্ন যাচাই: SpEL ব্যবহার করে আপনি ডাইনামিকভাবে যেকোনো স্ট্রিং প্যাটার্ন যাচাই করতে পারেন, যা runtime এর সময়ে প্রয়োজনীয় প্যাটার্ন দিয়ে এক্সপ্রেশন তৈরি করতে সাহায্য করে।
  2. স্ট্রিং বৈধতা যাচাই: SpEL এর matches অপারেটর দিয়ে আপনি সহজেই ইমেইল, ফোন নাম্বার, নাম ইত্যাদির ফরম্যাট যাচাই করতে পারবেন।
  3. Regular Expressions: SpEL এর মাধ্যমে আপনি প্রথাগত রেগুলার এক্সপ্রেশনের সুবিধা পেয়ে যাচাই করতে পারবেন, যা খুবই শক্তিশালী ও নমনীয়।

সারাংশ

Spring Expression Language (SpEL) এর matches অপারেটর দিয়ে আপনি সহজেই স্ট্রিং প্যাটার্ন যাচাই করতে পারেন। এটি রেগুলার এক্সপ্রেশন (Regex) ব্যবহার করে স্ট্রিংয়ের ফরম্যাট যাচাই করার একটি কার্যকর উপায়। SpEL এর matches অপারেটরটি স্প্রিং কনফিগারেশন এবং Java কোডে ডাইনামিক স্ট্রিং যাচাই করার জন্য খুবই কার্যকর।

Content added By
Promotion

Are you sure to start over?

Loading...