আপনার কাজটি এমন একটি প্রোগ্রাম তৈরি করা যা নির্ধারণ করে যে প্রদত্ত স্ট্রিংটি বৈধ নিয়মিত অভিব্যক্তি কিনা বা স্ট্যাকএক্সচেঞ্জ নেটওয়ার্কের সাইটগুলি থেকে উত্সযুক্ত কোড স্নিপেটগুলি ব্যবহার না করে।
এই চ্যালেঞ্জের উদ্দেশ্যে, রেগুলার এক্সপ্রেশন উপভাষা মেটা-অক্ষরের একটি সেট ছিনতাই নিচে এবং বেশিরভাগ সংক্ষিপ্ত হতে হবে: ()*?|\
। এর মতো, আপনি বিল্ট-ইন রেজেক্স পার্সার ব্যবহার করতে সক্ষম হবেন না।
\
মেটা-চরিত্রগুলি এড়ানোর জন্য ব্যবহৃত হয়। এটি অবশ্যই একটি মেটা-চরিত্র দ্বারা অনুসরণ করা উচিত।- আনসকেপড বন্ধনীগুলি অবশ্যই ভারসাম্যপূর্ণ হবে
*
এবং?
অবশ্যই একটি মেটা-অক্ষর, একটি প্রথম বন্ধনী গোষ্ঠী, বা একটি পালিয়ে যাওয়া মেটা-চরিত্র দ্বারা আবশ্যক।- অন্যান্য সমস্ত মুদ্রণযোগ্য ASCII অক্ষর প্লাস নিউলাইন, ট্যাব এবং স্পেসকে নন-মেটা অক্ষর হিসাবে সমর্থন করতে হবে। অন্যান্য অক্ষরযুক্ত স্ট্রিংয়ের সাথে কী ঘটে তা অপরিজ্ঞাত।
- এই চ্যালেঞ্জের জন্য রেজেক্সের আসল অর্থটি গুরুত্বপূর্ণ নয়।
উদাহরণ
Truthy:
abc
a?
(a|)*
()
a|b*
\*
\\
\\*
a*b?(cd|e)
+
[
}
(123\))*
\|
(a(b(c|d)*e)*f)*
(|\)*)
(abc)+*
(abc)+
+abc
^ last test case is an actual newline
Falsy:
?abc
*
**
\
(
a*?
a?*
?
a)
(\)
(|\)*
\()
|*
(?:abc)
\\**
\n
স্কোরিং
আপনার সামগ্রিক স্কোরটি স্ট্যাকএক্সচেঞ্জের আশেপাশে প্রশ্ন ও উত্তর থেকে নেওয়া স্নিপেটের সংখ্যা।
- বারবার স্নিপেটগুলি যতবার ব্যবহৃত হয় ততবার গণনা করে।
- হোয়াইটস্পেস নিখরচায় যোগ এবং সরানো যেতে পারে (পাইথন, হাস্কেল এবং অন্যান্য হোয়াইটস্পেস-সংবেদনশীল ভাষার কারণে) এবং আপনার স্নিপেটের গণনা বিবেচনা করে না।
- যদি আপনার কোডটি হোয়াইটস্পেসে লেখা থাকে তবে ব্যতিক্রমটি হতে পারে ।
- এই চ্যালেঞ্জের চেয়ে কোনও স্ট্যাকএক্সচেঞ্জ সাইট থেকে স্নিপেটগুলি অনুমতি দেওয়া হয় যতক্ষণ না তারা প্রশ্ন, উত্তর এবং পুরানো মন্তব্যগুলি (যতক্ষণ না সম্পাদনার সময় সহ - যদি প্রয়োজনে পুরানো সংশোধনগুলি ব্যবহার করে) থেকে আসে। (সেপ্টেম্বর 24, 2019 @ 3:30 অপরাহ্ন ইউটিসি)
- স্নিপেটগুলি কোনও প্রশ্ন, উত্তর, বা মন্তব্য বডি থেকে যে কোনও জায়গা থেকে আসতে পারে, তা প্রিম্প্রেটেড কোড ব্লকের মধ্যে রয়েছে কিনা।
- অন্যটির মাঝে একটি স্নিপেট ছড়িয়ে দেওয়ার ফলে বাইরের স্নিপেটকে দুটি স্নিপেট হিসাবে গণনা করা হয়
সর্বনিম্ন স্কোর জয়!