কেস-ভাঁজ জার্মান


9

একটি জার্মান স্ট্রিং এবং একটি কেস (নিম্ন / উচ্চ / শিরোনাম) এর ইঙ্গিত দেওয়া, সেই ক্ষেত্রে স্ট্রিংটি ভাঁজ করুন।

বিশেষ উল্লেখ

  1. ইনপুট শুধুমাত্র গঠিত হবে a- zপ্লাস äöüß-,.;:!?'"বড় হাতের এবং / অথবা ছোট হাতের অক্ষর ব্যবহার করুন।
  2. লক্ষ্য কেসটি একটি সামঞ্জস্যপূর্ণ ধরণের তিনটি অনন্য মান (দয়া করে সেগুলি নির্দিষ্ট করুন) হিসাবে নেওয়া যেতে পারে; তিনটি অক্ষর, বা তিন সংখ্যা, বা তিন বিট নিদর্শন। (কেস স্পেসিফিকেশনের জবাবটি "আউটসোর্সিং" রোধ করার জন্য অন্যান্য ফর্ম্যাটগুলিকে বর্তমানে অনুমোদিত নয় you আপনি যদি মনে করেন যে অতিরিক্ত বিন্যাসের অনুমতি দেওয়া উচিত তবে মন্তব্য করুন))
  3. শিরোনামের অর্থ হ'ল একটি অক্ষর অনুসরণকারী অক্ষরগুলি ব্যতীত বড় হাতের অক্ষর (অক্ষরগুলি হ'ল a- zযোগ äöüß)।

Gotchas

  1. যখন ßবড় হাতের দরকার হয় তখন তা হয়ে উঠতে হবে । কিছু কেস-ফোল্ডিং বিল্ট-ইনগুলি এবং লাইব্রেরিগুলি এটি করে না।

  2. যখন ßটাইটেলিকেস করা দরকার তখন তা হয়ে উঠতে হবে Ss। কিছু কেস-ফোল্ডিং বিল্ট-ইনগুলি এবং লাইব্রেরিগুলি এটি করে না।

  3. ssপাঠ্যে ঘটে থাকতে পারে এবং কখনই ßবা রূপান্তর করা উচিত নয়

উদাহরণ

বড় হাতের অক্ষরে die Räder sagen "ßß ss" für dich, wegen des Öls!
হয়DIE RÄDER SAGEN "ẞẞ SS" FÜR DICH, WEGEN DES ÖLS!

লোয়ার কেস die Räder sagen "ßß ss" für dich, wegen des Öls!
হয় die räder sagen "ßß ss" für dich, wegen des öls!

শিরোনাম কেস die Räder sagen "ßß ss" für dich, wegen des Öls!
হয়Die Räder Sagen "Ssß Ss" Für Dich, Wegen Des Öls!


2
ফলাফল কি হবে Ss? এছাড়াও, উদাহরণ ইনপুটটি অনুপস্থিতss
রড

@Rod SS Ss ss। আপনি আমাকে বলতে পারেন কেন এটি অস্পষ্ট?
আদম


আমি কি তিনটি অনন্য মান পাইথন ফাংশন করতে অনুমতি দিচ্ছি? (আমার উত্তর দেখুন)
HyperNeutrino 11'18

না, এই তিনটি অনন্য মান অবশ্যই অক্ষর, সংখ্যা বা বিট নিদর্শনগুলির মধ্যে আবশ্যক তা নির্দিষ্ট করে প্রতিরোধের উদ্দেশ্য।
এডম

উত্তর:


6

জাপট , 42 40 বাইট

অলিভারকে ধন্যবাদ 2 বাইট সংরক্ষণ করা হয়েছে

r'ßQ=7838d)u mV,@W¦vW=X ?Xv :X¥Q?"Ss":Xu

হ্যাঁ, এটি বেশ কিছু প্রচেষ্টা নিয়েছে। ইনপুট রূপান্তর করার স্ট্রিং এবং একটি একক অক্ষর: uবড় হাতের অক্ষরের জন্য, vছোট হাতের mজন্য, শিরোনাম ক্ষেত্রে।

এটি অনলাইন পরীক্ষা!


আপনার কি দরকার }0?
অলিভার

@Oliver হ্যাঁ, অন্যথায় এটি করব ... অপেক্ষার, হয়তো না ...
ETHproductions

4

পাইথন 3 , 92 বাইট

lambda s,c:[str.lower,str.upper,str.title][c](s.replace("ẞ","ß").replace("ß"*c,"ẞ"*c))

এটি অনলাইন চেষ্টা করুন!


ওহ না! দুর্ভাগ্যক্রমে, এটি চ্যালেঞ্জের একটি উল্লেখযোগ্য অংশ।
এরিক আউটগলফার

@ এরিকথ আউটগল্ফার ঠিক করেছেন, ধন্যবাদ
হাইপারনিউটারিনো


3

জেলি , 50 বাইট

⁽ñWỌ”ß;y⁸Œu
Ñ⁾SsÇ⁼?€1¦”ß
Œl
Çe€“Ġẹṇṣ‘ỌÇ;Øa¤Œg⁸ṁ⁹Ŀ€

এটি অনলাইন চেষ্টা করুন!

পুরো প্রোগ্রাম।

ভাই, গল্ফ করতে এটি অনেক সময় নিয়েছে ...

তর্ক 1: স্ট্রিং (
এড়াতে হতে পারে) আর্গুমেন্ট 2: 1বড় হাতের 2জন্য, শিরোনামের ক্ষেত্রে, 3ছোট হাতের জন্য for


1

পরিষ্কার , 649 279 275 274 246 বাইট

হ্যাঁ, এটি 123 122 94 বাইট আমদানি, যা ইতিমধ্যে অন্যান্য উত্তরগুলির চেয়ে দীর্ঘ।

from StdList import++,map,flatten
import StdLib,StdInt,StdBool,Text.Unicode,Text.Unicode.UChar
$ =fromInt
? =isAlpha
^ =toUpper
@0s=map^s
@1s=map toLower s
@2s=flatten(map(\[h:t]=if($223==h||h> $999)[$83,$115][^h]++ @1t)(groupBy(\a b= ?a== ?b)s))

এটি অনলাইন চেষ্টা করুন!

@একটি Intএবং একটি গ্রহণ করে UStringএবং ফিরতি ফাংশনটি সংজ্ঞায়িত করে UString
সুবিধাজনকভাবে, UString(ইউনিকোড পরিচালনা করার জন্য ক্লিনের ডিফল্ট উপায়), এটির জন্য কেবল একটি প্রকারের উপনাম [Int]which যা Intস্ট্রিংয়ের অক্ষরগুলির ইউনিকোড কোডপয়েন্টগুলি ধারণ করার একটি তালিকা ।
সুবিধামত , Text.Unicode.UCharআসলেই দীর্ঘ, এবং আমি পারি না import StdEnvকারণ সংজ্ঞাগুলির সাথে StdCharসংঘাতের সংজ্ঞাগুলি Text.Unicode.UChar(কারণ তারা একসাথে ব্যবহারের উদ্দেশ্যে নয়)।

তিনটি মান হ'ল উচ্চ, নিম্ন এবং শিরোনাম ক্ষেত্রে 0, 1 এবং 2।

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