@ কোডাডিক্ট এর সমাধান কাজ করবে।
আপনার কিছু বিধি পরিবর্তন করার বিষয়টিও বিবেচনা করা উচিত:
- আরও বিশেষ অক্ষর যুক্ত করুন যেমন%, ^, (,), -, _, +, এবং পিরিয়ড। আমি ইউএস কীবোর্ডের সংখ্যার চিহ্নগুলির চেয়ে বেশি যে বিশেষ অক্ষরটি মিস করেছি সেগুলি আমি যুক্ত করছি। রেজেক্সের ব্যবহারগুলি এড়িয়ে চলুন।
- পাসওয়ার্ডটি 8 বা তার বেশি অক্ষর তৈরি করুন। আটটি স্থিতিশীল নয়।
উপরের উন্নতিগুলি সহ, এবং আরও নমনীয়তা এবং পঠনযোগ্যতার জন্য, আমি এতে রেজিটাকে সংশোধন করব।
^(?=.*[a-z]){3,}(?=.*[A-Z]){2,}(?=.*[0-9]){2,}(?=.*[!@#$%^&*()--__+.]){1,}.{8,}$
বেসিক ব্যাখ্যা
(?=.*RULE){MIN_OCCURANCES,} Each rule block is shown by (){}. The rule and number of occurrences can then be easily specified and tested separately, before getting combined
বিস্তারিত ব্যাখ্যা
^ start anchor
(?=.*[a-z]){3,} lowercase letters. {3,} indicates that you want 3 of this group
(?=.*[A-Z]){2,} uppercase letters. {2,} indicates that you want 2 of this group
(?=.*[0-9]){2,} numbers. {2,} indicates that you want 2 of this group
(?=.*[!@#$%^&*()--__+.]){1,} all the special characters in the [] fields. The ones used by regex are escaped by using the \ or the character itself. {1,} is redundant, but good practice, in case you change that to more than 1 in the future. Also keeps all the groups consistent
{8,} indicates that you want 8 or more
$ end anchor
এবং সবশেষে, পরীক্ষার উদ্দেশ্যে এখানে উপরোক্ত রেগেক্সের সাথে একটি রবুলিংক রয়েছে