पर आधारित स्प्लिट स्ट्रिंग मेरे पास सारणीबद्ध रूप में कमांड का आउटपुट है। मैं परिणाम आउटपुट से इस आउटपुट को पार्स कर रहा हूं और इसे स्ट्रिंग में संग्रहीत कर रहा हूं। एक पंक्ति में प्रत्येक तत्व को एक या अधिक सफेद जगह वर्णों से अलग किया जाता है, इस प्रकार मैं 1 या अधिक रिक्त स्थान से मेल खाने और इसे विभाजित करने के लिए नियमित अभिव्यक्तियों का उपयोग कर रहा हूं। हालांकि, प्रत्येक तत्व के बीच एक स्थान डाला जा रहा है:एक नियमित अभिव्यक्ति
>>> str1="a b c d" # spaces are irregular
>>> str1
'a b c d'
>>> str2=re.split("()+", str1)
>>> str2
['a', ' ', 'b', ' ', 'c', ' ', 'd'] # 1 space element between!!!
क्या ऐसा करने का कोई बेहतर तरीका है?
प्रत्येक विभाजन str2
सूची में शामिल होने के बाद।
मैंने इस प्रश्न को कम किया। कारण यह है कि जब प्रश्न स्वयं प्रासंगिक होता है तो दिया गया उदाहरण वास्तव में अनुरोधित समाधान की आवश्यकता के लिए पर्याप्त नहीं है। यदि आपके पास शब्दों के ब्लॉक, संख्याओं के ब्लॉक और आप उन्हें विभिन्न चरों में अलग करना चाहते हैं, तो एक रेगेक्स की आवश्यकता होगी। – erikbwork
@erikbwork मैं परिणामस्वरूप स्ट्रिंग 'str2'' – user2763554
में अनचाहे स्पेस आइटम को हटाना चाहता था हाँ और आप इसे' str1.split() 'का उपयोग करके प्राप्त कर सकते हैं। एक regex के लिए कोई ज़रूरत नहीं है। – erikbwork