रूबी सरणी से स्ट्रिंग रूपांतरण


178

मेरे पास एक रूबी सरणी है ['12','34','35','231']

मैं इसे एक स्ट्रिंग में बदलना चाहता हूं '12','34','35','231'

मैं उसे कैसे कर सकता हूँ?

जवाबों:


315

मैं इसमें शामिल हो जाऊंगा:

['12','34','35','231'].join(', ')

संपादित करें:

"'#{['12','34','35','231'].join("', '")}'"

पहला और अंतिम एकल उद्धरण जोड़ने के लिए कुछ स्ट्रिंग प्रक्षेप: पी


1
"12,34,35,231" का परिणाम है। यह परिणाम में एकल उद्धरण याद कर रहा है।
बर्नार्ड

1
ओके ने पहले और आखिरी सिंगल कोट्स को जोड़ने के लिए कुछ स्ट्रिंग इंटरपलेशन को जोड़ा: P
coreded

यह कैसे वापस करना है?
zx1986

क्या आप मतलब वापस लाएं @ zx1986 करना
जीर्णशीर्ण

@ सॉरी सॉरी, मुझे मिल गया। JSON.parse("[12, 39, 100]")एक सरणी वापस आ जाएगी।
zx1986


31

इस कोड को आज़माएं ['12','34','35','231']*","

आपको "12,34,35,231" परिणाम देगा

मुझे आशा है कि यह परिणाम है, मुझे बताएं


मुझे लगता है कि ओपी को भी सिंगल कोटे की जरूरत है।
लाफ


9
string_arr.map(&:inspect).join(',') # or other separator

यह सही आउटपुट नहीं देता है - मानों को एकल उद्धरण में लपेटने की आवश्यकता है। यदि यह वांछित आउटपुट था तो string_arr.join (",") बेहतर विकल्प होगा।
सीन कैमरून

सीन, तुम गलत हो। क्या आपने अभिव्यक्ति को चलाया, कम से कम एक बार ??
avihil

यह अभी भी गलत है। यह सरणी प्रविष्टियों के आसपास दोहरे उद्धरण चिह्नों में परिणाम करता है, एकल उद्धरण नहीं। इसके अलावा यह उस प्रारूप के बारे में एक धारणा पर निर्भर करता है जो डेटा का "निरीक्षण ()" करता है, जो इसे नाजुक बनाता है।
एंड्रयू हॉजकिंसन

['1', '2', '3']। मैप {| o | "\" # {ओ} \ ""} .जॉइन (',')
avihil

7

मैं इस तरह से पठनीय और बकवास लगता हूं:

add_quotes =- > x{"'#{x}'"}

p  ['12','34','35','231'].map(&add_quotes).join(',') => "'12','34','35','231'"



3
irb(main)> varA
=> {0=>["12", "34", "35", "231"]}
irb(main)> varA = Hash[*ex.collect{|a,b| [a,b.join(",")]}.flatten]
...

3
irb(main):027:0> puts ['12','34','35','231'].inspect.to_s[1..-2].gsub('"', "'")
'12', '34', '35', '231'
=> nil

2

आप कुछ कार्यात्मक प्रोग्रामिंग दृष्टिकोण, ट्रांसफॉर्मिंग डेटा का उपयोग कर सकते हैं:

['12','34','35','231'].map{|i| "'#{i}'"}.join(",")


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.