Clojure में string एक Java स्ट्रिंग होती है। यह एक ऑब्जेक्ट है जो अपरिवर्तनीय टेक्स्ट को Unicode अक्षरों (अक्षर, अंक, विराम चिह्न, आदि) के क्रम के रूप में दर्शाता है। इसे इस तरह परिभाषित किया जाता है:
(def fruit "Apple")
clojure.string लाइब्रेरी स्ट्रिंग को संशोधित करने और प्रोसेस करने के लिए कई मानक फंक्शन देती है। इसके अलावा, स्ट्रिंग पर काम करने के लिए Java के सारे सामान्य मेथड इंटरऑप के ज़रिए उपलब्ध हैं।
इस अभ्यास में आप लॉग लाइनों के साथ काम करेंगे।
हर लॉग लाइन एक स्ट्रिंग होती है जिसका प्रारूप इस तरह होता है: "[<LEVEL>]: <MESSAGE>".
तीन अलग-अलग लॉग लेवल होते हैं:
INFOWARNINGERRORआपके पास तीन कार्य हैं। हर कार्य में एक लॉग लाइन दी जाएगी और आपको उसके साथ कुछ करना होगा।
लॉग लाइन का संदेश लौटाने के लिए message फंक्शन बनाइए:
(message "[ERROR]: Invalid operation")
;;=> "Invalid operation"
शुरू या अंत में मौजूद कोई भी खाली स्थान हटा देना चाहिए:
(message "[WARNING]: Disk almost full\r\n")
;;=> "Disk almost full"
लॉग लाइन का लॉग लेवल लौटाने के लिए log-level फंक्शन बनाइए, और यह लेवल छोटे अक्षरों में लौटाया जाना चाहिए:
(log-level "[ERROR]: Invalid operation")
;;=> "error"
ऐसा reformat फंक्शन बनाइए जो लॉग लाइन का प्रारूप बदलता है, संदेश को पहले रखता है और उसके बाद लॉग लेवल को गोल ब्रैकेटों में लिखता है:
(reformat "[INFO]: Operation completed")
;;=> "Operation completed (info)"
Exercism पर साइन अप कीजिए और Clojure को 12 कॉन्सेप्ट105 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।