একটি রেইগেক্স বহুভোজ তৈরি করুন


19

একটি রিজেক্স লিখুন যা কমপক্ষে 2 রিজেক্স স্বাদে (বা সংস্করণগুলি) কাজ করে এবং প্রতিটি স্বাদে (বা সংস্করণ) এটি চলমান একটি ভিন্ন স্ট্রিংয়ের সাথে মেলে।

এই চ্যালেঞ্জের সাথে মেলে থাকা স্ট্রিংগুলি উবুন্টু কোড নামের প্রথম শব্দ যা নীচে তালিকাভুক্ত রয়েছে। আপনার রেজেক্স তালিকার শীর্ষ থেকে মিলছে। এটি হ'ল, যদি আপনার রেজেক্স 3 টি স্বাদে কাজ করে, তবে এটি মিলবে Warty Hoaryএবং Breezyঅন্যদের নয়।

Warty
Hoary
Breezy
Dapper
Edgy
Feisty
Gutsy
Hardy
Intrepid
Jaunty
Karmic
Lucid
Maverick
Natty
Oneiric
Precise
Quantal
Raring
Saucy
Trusty
Utopic
Vivid
Wily
Xenial
Yakkety
Zesty
17.10
18.04
18.10
19.04
19.10
...

যদি আপনার রেজেক্স 26 টিরও বেশি স্বাদে কাজ করে তবে আপনি উবুন্টু সংস্করণ সংখ্যার সাথে মিলিয়ে দেখতে পারেন। প্রতিটি নতুন গন্ধের জন্য 17.10 থেকে শুরু করে, দ্বিতীয় নম্বরটি 04 হলে এটি 10 ​​এ পরিবর্তন করুন এবং প্রথম সংখ্যাটি বৃদ্ধি করুন এবং অন্যথায় দ্বিতীয়টিতে 04 পরিবর্তন করুন।

প্রতিটি স্বাদে, আপনার রেজেক্সের কেবলমাত্র অনুমিত স্ট্রিং এবং অন্য কোনও কিছুর (কোডের নামগুলিতে সীমাবদ্ধ নয়) মেলানো উচিত। নতুন লাইনের পেছনে কিছু যায় আসে না। এর অর্থ হল আপনার রেজেক্স হয় কেবল পেছনের নিউলাইন ছাড়াই স্ট্রিংয়ের সাথে মেলে, কেবল নতুন স্ট্রিংটিকে পেছনের নতুন লাইনের সাথে মেলে বা উভয়কেই মেলাতে পারে। এবং এটি বিভিন্ন স্বাদে সামঞ্জস্য হতে হবে না। আপনি ধরে নিতে পারেন যে ইনপুটটি প্রিন্টযোগ্য এএসসিআইআইতে রয়েছে (অনুচ্ছেদে নতুন লাইন বাদে যদি থাকে তবে)।

আপনার স্কোরটি (আপনার কোডের দৈর্ঘ্য + 10) / ((স্বাদের সংখ্যা) ^ 2)। সর্বনিম্ন স্কোর জয়।


1
শুধু যাচাই করতে হবে - "প্রতিটি স্বাদে, আপনার রেজেক্সটি কেবলমাত্র অনুমিত স্ট্রিং এবং অন্য কোনও কিছুর সাথে মেলে না" ", এর অর্থ কি প্রতিটি রেজেক্স কেবল একটি উবুন্টু সংস্করণের নাম এবং অন্য কোনও নামের সাথে মেলে না তবে সম্ভাব্যভাবে অন্যান্য অ-সংস্করণটির সাথে মেলে নামের স্ট্রিং, বা এর অর্থ কি এই যে রেজেক্স কেবল সেই সঠিক স্ট্রিং এবং অন্য কোনও স্ট্রিংয়ের সাথে মেলে না, এমনকি এটি উপরে তালিকার কোনও সংস্করণের নাম নাও?
Sp3000

@ Sp3000 এটি সেই সঠিক স্ট্রিংয়ের সাথে মিলিত হওয়া উচিত এবং অন্য কোনও স্ট্রিং নেই।
jimmy23013

উত্তর:


24

87 বাইট, 5 স্বাদ, (87 + 10) / 25 = 3.88

^(((?=W)[[:word:]&&]art|Ho(?=a)\ar|Bre(?=ez)[]e]\z|E(?=dg)[[d]]g)y|(?=Da)[D-[E]]apper)$

আমি আপাতত স্বাদ পরীক্ষা করার সহজ সাথে চলেছি, যা হ'ল:

সাধারণ কাঠামোটি হ'ল ^((...)y|...)$, অর্থাত্ পিছনের গুলিটি বের করে আঙ্গুলগুলি yযুক্ত করা।

ওয়ার্টি (পিসিআরই)

(?=W)[[:word:]&&]art

পিসিআরই এবং রুবিতে [[:word:]]একটি পসিক্স অক্ষর শ্রেণি যা একটি শব্দের অক্ষরের সাথে মেলে - অন্য স্বাদে আপনি একটি [[:word:]অক্ষর শ্রেণি পেয়ে যাবেন তখন আক্ষরিক &&], যা দৃ f়তা ব্যর্থ (?=W)করে। রুবিকে ব্যর্থ করার জন্য, &&পসিক্স ক্লাসটি কিছুই না করে ছেদ করতে ব্যবহৃত হয়, যদিও পিসিআরইতে &&এর কোনও বিশেষ অর্থ নেই।

হোয়ারি (জাভাস্ক্রিপ্ট)

Ho(?=a)\ar

যে কারণেই হোক না কেন, জাভাস্ক্রিপ্ট হ'ল \aআক্ষরিক বাহির একমাত্র স্বাদ a- অন্যান্য স্বাদে এটি বেল চরিত্রের সাথে মেলে (এএসসিআইআই 7)।

হাওয়া (পাইথন)

Bre(?=ez)[]e]\z

পাইথন এবং জাভাস্ক্রিপ্টে \zআক্ষরিক z- অন্যান্য স্বাদে এটি $স্ট্রিং অ্যাঙ্কারের সমাপ্তির সমান । জাভাস্ক্রিপ্ট করতে ব্যর্থ আমরা গৃহস্থালির কাজ বর্গ ব্যবহার []e], যা একটি খালি গৃহস্থালির কাজ বর্গ []তারপর আক্ষরিক e]জাভাস্ক্রিপ্ট, এবং একটি দুই গৃহস্থালির কাজ বর্গ []e]পাইথন হবে।

ডিপার (। নেট)

(?=Da)[D-[E]]apper

ইন .NET, [D-[E]]একটি সেট পার্থক্য, সেট সরানোর হয় [E]থেকে [D]। পিসিআরই, জাভাস্ক্রিপ্ট এবং পাইথনে, আমরা [D-[E]তখন আক্ষরিক ক্লাস করি ]। রুবি কিছুটা আলাদা, তবে কোনও কারণে এটি ক্লাস হিসাবে পার্স করে [D-[E]]যা কেবল মেলে E, এবং কেন আমি এখনও বুঝতে পারি নি ...

এজী (রুবি)

E(?=dg)[[d]]g

রুবি চর ক্লাসের ভিতরে চার ক্লাসের অনুমতি দেয়, [[d]]এটি আসলে সমান [d]বা ন্যায়সঙ্গত d। অন্যান্য স্বাদে, আমরা [[d]তখন আক্ষরিক ]

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.