आइए बात करते हैं कि आप रूबी में स्ट्रिंग्स को कैसे प्रारूपित कर सकते हैं।
आप एक स्ट्रिंग को प्रारूपित क्यों करना चाहेंगे? ठीक है, हो सकता है कि आप ऐसे काम करना चाहें जैसे संख्या 10 से कम हो (उदाहरण:01, 02, 03…), या कुछ कंसोल आउटपुट कॉलम में अच्छी तरह से स्वरूपित हो।
अन्य भाषाओं में आप printf . का उपयोग कर सकते हैं स्ट्रिंग्स को प्रारूपित करने के लिए कार्य करता है, और यदि आपने कभी C का उपयोग किया है तो आप शायद इससे परिचित हैं। प्रिंटफ का उपयोग करने के लिए आपको प्रारूप विनिर्देशों की एक सूची और चर या मूल्यों की सूची को परिभाषित करना होगा।
रूबी स्ट्रिंग फ़ॉर्मेटिंग के साथ शुरुआत करना
जबकि स्प्रिंटफ रूबी में भी उपलब्ध है, इस पोस्ट में हम अधिक मुहावरेदार तरीके का उपयोग करेंगे (किसी कारण से समुदाय शैली गाइड इस पर सहमत नहीं है, लेकिन मुझे लगता है कि यह ठीक है)।
यहां एक उदाहरण दिया गया है:
time = 5 message = "Processing of the data has finished in %d seconds" % [time] puts message
Output => "Processing of the data has finished in 5 seconds"
इस उदाहरण में, %d प्रारूप विनिर्देशक है (यहां उपलब्ध विनिर्देशों की एक सूची है) और समय वह चर है जिसे हम स्वरूपित करना चाहते हैं। %d प्रारूप हमें केवल पूर्ण संख्याएँ देगा।
यदि हम फ्लोटिंग पॉइंट नंबर प्रदर्शित करना चाहते हैं तो हमें %f . का उपयोग करने की आवश्यकता है . हम दशमलव स्थानों की संख्या इस प्रकार निर्दिष्ट कर सकते हैं:%0.2f ।
2 यहाँ इंगित करता है कि हम केवल दो दशमलव स्थान रखना चाहते हैं।
यहां एक उदाहरण दिया गया है:
score = 78.5431 puts "The average is %0.2f" % [score]
Output => The average is 78.54
है
याद रखें कि संख्या को गोल किया जाएगा। उदाहरण के लिए, यदि मैंने 78.549
का उपयोग किया है पिछले उदाहरण में, इसने 78.55
. प्रिंट किया होगा ।
रूपांतरण और पैडिंग
आप एक दशमलव संख्या को परिवर्तित कर सकते हैं और इसे हेक्साडेसिमल के रूप में प्रिंट कर सकते हैं। %x . का उपयोग करना प्रारूप:
puts "122 in HEX is %x" % [122]. डालता है
Output => 122 in HEX is 7a
स्ट्रिंग को पैड करने के लिए:
किसी संख्या में जितनी चाहें उतनी 0 की पैडिंग के लिए इस प्रारूप का उपयोग करें:%0<शून्य की संख्या>d
puts "The number is %04d" % [20]डालता है
Output => The number is 0020
आप इस रूबी स्ट्रिंग प्रारूप का भी उपयोग कर सकते हैं टेक्स्ट के अलाइन्ड कॉलम बनाने की ट्रिक। इस प्रभाव को प्राप्त करने के लिए 0 को डैश से बदलें:
वैकल्पिक रूप से, आप .ljust और .rjust
. का उपयोग कर सकते हैं ऐसा करने के लिए स्ट्रिंग क्लास के तरीके।
उदाहरण :
names_with_ages = [["john", 20], ["peter", 30], ["david", 40], ["angel", 24]] names_with_ages.each { |name, age| puts name.ljust(10) + age.to_s } # Prints the following table john 20 david 30 peter 40 angel 24
निष्कर्ष
जैसा कि आपने देखा है रूबी और रेल स्ट्रिंग स्वरूपण वास्तव में आसान है, यह सब आपके लिए उपलब्ध विभिन्न प्रारूप विनिर्देशों को समझने के लिए है।
मुझे आशा है कि आपने आउटपुट स्वरूपण की दुनिया में इस तेज़ यात्रा का आनंद लिया! मेरे न्यूज़लेटर की सदस्यता लेना न भूलें ताकि मैं आपको और अच्छी सामग्री भेज सकूं 🙂