मैंने पायथन में निम्नलिखित कार्य किया:
s = "This is a text"
re.split("(W)", s)
# => ["This", " ", "is", " ", "a", "text"]
यह बहुत अच्छा काम किया। मैं रूबी में समान विभाजन कैसे करूं?
मैंने यह कोशिश की है, लेकिन यह मेरे व्हाट्सएप को खा जाता है।:
s = "This is a text"
s.split(/[W]/)
# => ["This", "is", "a", "text"]
उत्तर:
उत्तर № 1 के लिए 6वहाँ से String#split
प्रलेखन:
यदि पैटर्न में समूह हैं, तो संबंधित मिलान वापस कर दिए जाएंगे साथ ही सरणी।
यह रूबी में काम करता है जैसे कि पायथन में, वर्ग ब्रैकेट निर्दिष्ट वर्ण वर्गों के लिए हैं, समूहों से मेल नहीं खाते:
"foo bar baz".split(/(W)/)
# => ["foo", " ", "bar", " ", "baz"]
उत्तर № 2 के लिए 1
toro2k का उत्तर सबसे सीधा है। वैकल्पिक रूप से,
string.scan(/w+|W+/)