मान लीजिए हमारे पास एक स्ट्रिंग है जिसमें शुरुआत में संख्याएं हैं। इस लेख में हम देखेंगे कि स्ट्रिंग के केवल संख्यात्मक भाग को कैसे प्राप्त किया जाए जो शुरुआत में निश्चित है।
इसडिजिट के साथ
इसडिजिट फ़ंक्शन तय करता है कि स्ट्रिंग का भाग अंक है या नहीं। इसलिए हम इटरटूल्स से टेकव्हाइल फ़ंक्शन का उपयोग करके स्ट्रिंग के प्रत्येक भाग को जोड़ेंगे जो अंक है।
उदाहरण
from itertools import takewhile
# दी गई स्ट्रिंग
stringA = "347Hello"
print("Given string : ", stringA)
# टेकव्हाइल का उपयोग करके
res = ''.join(takewhile(str.isdigit, stringA))
# परिणामी स्ट्रिंग प्रिंट करना
print("Numeric Prefix from the string: \n", res)
आउटपुट
उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -
Given string : 347Hello Numeric Prefix from the string: 347
re.sub के साथ
रेगुलर एक्सप्रेशन मॉड्यूल re का उपयोग करके हम केवल अंकों को खोजने के लिए एक पैटर्न बना सकते हैं। खोज केवल स्ट्रिंग की शुरुआत में अंकों को ढूंढेगी।
उदाहरण
import re
# दी गई स्ट्रिंग
stringA = "347Hello"
print("Given string : ", stringA)
# re.sub का उपयोग करके
res = re.sub('\D.*', '', stringA)
# परिणामी स्ट्रिंग प्रिंट करना
print("Numeric Prefix from the string: \n", res)
आउटपुट
उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -
Given string : 347Hello Numeric Prefix from the string: 347
re.findall के साथ
फाइंडऑल फ़ंक्शन समान तरीके से काम करता है सिवाय इसके कि हम * के बजाय प्लस साइन का उपयोग करते हैं।
उदाहरण
import re
# दी गई स्ट्रिंग
stringA = "347Hello"
print("Given string : ", stringA)
# re.sub का उपयोग करके
res = ''.join(re.findall('\d+', stringA))
# परिणामी स्ट्रिंग प्रिंट करना
print("Numeric Prefix from the string: \n", res)
आउटपुट
उपरोक्त कोड चलाने पर हमें निम्न परिणाम मिलता है -
Given string : 347Hello Numeric Prefix from the string: 347