किसी वाक्यांश को उसके एक्रोनिम में बदलिए।
तकनीक प्रेमियों को अपने TLA (Three Letter Acronyms) बहुत पसंद हैं!
कुछ नई तकनीकी शब्दावली बनाने में मदद कीजिए: एक ऐसा प्रोग्राम लिखिए जो Portable Network Graphics जैसे लंबे नाम को उसके एक्रोनिम (PNG) में बदल देता है।
विराम चिह्नों को इस तरह संभाला जाता है: हाइफन शब्दों को अलग करने का काम करते हैं (जैसे खाली स्थान), और बाकी सारे विराम चिह्न इनपुट से हटाए जा सकते हैं।
उदाहरण के लिए:
| इनपुट | आउटपुट |
|---|---|
| As Soon As Possible | ASAP |
| Liquid-crystal display | LCD |
| Thank George It's Friday! | TGIF |
यह अभ्यास टेक्स्ट डेटा के साथ काम करता है। ऐतिहासिक कारणों से Haskell का String टाइप [Char] का पर्यायवाची है, जो अक्षरों का एक ऐरे है। टेक्स्ट डेटा को ज़्यादा कुशलता से संभालने के लिए Text टाइप का उपयोग किया जा सकता है।
इस अभ्यास के लिए एक वैकल्पिक विस्तार के तौर पर आप यह कर सकते हैं:
Haskell में स्ट्रिंग टाइप के बारे में पढ़िए।
package.yaml में अपनी डिपेंडेंसी की सूची में - text जोड़िए।
Data.Text को इस तरीके से इम्पोर्ट कीजिए:
import qualified Data.Text as T
import Data.Text (Text)
अब आप उदाहरण के लिए abbreviate :: Text -> Text लिख सकते हैं और Data.Text के कॉम्बिनेटरों को T.filter जैसे नाम से इस्तेमाल कर सकते हैं।
Data.Text का डॉक्युमेंटेशन देखिए।
यह हिस्सा पूरी तरह वैकल्पिक है।
Exercism पर साइन अप कीजिए और Haskell को 107 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।
हम रेगुलर एक्सप्रेशन में एक हल्की डुबकी लगाते हैं। शुरुआत बुनियादी व्हाइटस्पेस मैचिंग से होती है, फिर हम यूनिकोड को समझते हैं, और अंत नेगेटिव लुकबिहाइंड पर होता है। अंत में हम संक्षिप्ताक्षर के कुछ और तरीके भी देखते हैं, जिनमें स्टेट मशीन भी शामिल है।