टेक्स्ट से केवल संख्याओं को निकालना Python डेटा एनालिटिक्स में एक बहुत ही सामान्य आवश्यकता है। यह Python रेगुलर एक्सप्रेशन लाइब्रेरी का उपयोग करके आसानी से किया जाता है। यह लाइब्रेरी हमें अंकों के लिए पैटर्न परिभाषित करने में मदद करती है जिन्हें सबस्ट्रिंग के रूप में निकाला जा सकता है।
उदाहरण
नीचे दिए गए उदाहरण में हम re मॉड्यूल से findall() फ़ंक्शन का उपयोग करते हैं। इन फ़ंक्शन के पैरामीटर वह पैटर्न हैं जिसे हम निकालना चाहते हैं और वह स्ट्रिंग जिससे हम निकालना चाहते हैं। कृपया ध्यान दें कि नीचे दिए गए उदाहरण के साथ हमें केवल अंक मिलते हैं न कि दशमलव बिंदु या नकारात्मक संकेत।
import re str = input("Enter a String with numbers: \n") # संख्याओं को रखने के लिए एक सूची बनाएं num_list = re.findall(r'\d+', str) print(num_list)आउटपुट
उपरोक्त कोड चलाने पर हमें निम्नलिखित परिणाम मिलता है -
Enter a String with numbers: Go to 13.8 miles and then -4.112 miles. ['13', '8', '4', '112']
दशमलव बिंदु और संकेतों को कैप्चर करना
हम खोज पैटर्न का विस्तार करके खोज परिणाम में दशमलव बिंदु और नकारात्मक या सकारात्मक संकेतों को भी शामिल कर सकते हैं।
उदाहरण
import re str = input("Enter a String with numbers: \n") # संख्याओं को रखने के लिए एक सूची बनाएं num_list = re.findall(r'[-+]?[.]?[\d]+', str) print(num_list)आउटपुट
उपरोक्त कोड चलाने पर हमें निम्नलिखित परिणाम मिलता है -
Enter a String with numbers: Go to 13.8 miles and then -4.112 miles. ['13', '.8', '-4', '.112']