^(?=.{10,255}$)(?:0x)?\p{XDigit}{2}(?:\p{XDigit}{2})*$
কোথায়,
-
^ − বাক্যের শুরুর সাথে মেলে।
-
(?=.{10,255}$) − 10 থেকে 255 অক্ষর দিয়ে শেষ হওয়া স্ট্রিং।
-
\p{XDigit}{2} − দুই হেক্সা-ডেসিমেল অক্ষর।
-
(?:\p{XDigit}{2})* − ডবল হেক্সা-ডেসিমেল অক্ষরের 0 বা তার বেশি ক্রম।
-
$ − বাক্যের শেষের সাথে মেলে।
উদাহরণ 1
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; পাবলিক ক্লাস JavaExample51 { পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] args) { স্ক্যানার sc =নতুন স্ক্যানার(সিস্টেম .ভিতরে); স্ট্রিং সংখ্যা [] =নতুন স্ট্রিং[5]; for(int i=0; iআউটপুট
<প্রে>একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:0x1234567890একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:123456789একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:123456789012একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:sfdgdfnen করুন:sfdgdfn#3567#V275700000000000000000000000000000000000000012012001200120012 valid123456789012 is validsfdgdf35364 বৈধ নয়$@%#BV#* বৈধ নয়
উদাহরণ 2
java.util.Scanner; পাবলিক ক্লাস JavaExample { public static void main(String[] args) { Scanner sc =new Scanner(System.in); System.out.println("একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:"); স্ট্রিং নাম =sc.nextLine(); স্ট্রিং রেজেক্স ="^(?=.{10,255}$)(?:0x)?\\p{XDigit}{2}(?:\\p{XDigit}{2})*$"; বুলিয়ান ফলাফল =name.matches(regex); if(ফলাফল) { System.out.println("প্রদত্ত নম্বর বৈধ"); } else { System.out.println("প্রদত্ত নম্বর বৈধ নয়"); } } }
আউটপুট 1
আপনার নাম লিখুন:0x1234567890প্রদত্ত নাম বৈধ
আউটপুট 2
একটি হেক্সা-ডেসিমেল সংখ্যা লিখুন:024587545প্রদত্ত সংখ্যা বৈধ নয়