PHP में, आप रेगुलर एक्सप्रेशन और preg_match_all()
फ़ंक्शन का उपयोग करके एक स्ट्रिंग से संख्याएँ निकाल सकते हैं। यहां एक उदाहरण दिया गया है कि एक स्ट्रिंग से सभी नंबर कैसे निकाले जाएं:
$my_string = "There are 15 Oranges and 3 Bananas.";
preg_match_all('/[0-9]+/', $my_string , $matches);
print_r($matches[0]);
यह आउटपुट देगा:
Array ( [0] => 15 [1] => 3 )
स्पष्टीकरण:
/[0-9]+/
एक या अधिक लगातार अंकों की खोज करता है।preg_match_all()
फ़ंक्शन रेगुलर एक्सप्रेशन की सभी घटनाओं के लिए स्ट्रिंग की खोज करता है और मिलानों को $matches
सरणी में संग्रहीत करता है।print_r()
फ़ंक्शन का उपयोग सरणी की सामग्री को प्रदर्शित करने के लिए किया जाता है।आप स्ट्रिंग से गैर-संख्यात्मक वर्णों को हटाने और केवल संख्याएँ रखने के लिए preg_replace()
फ़ंक्शन का भी उपयोग कर सकते हैं:
$string = "There are 15 Oranges and 3 Bananas.";
$numbers = preg_replace('/D/', '', $string);
echo $numbers;
यह आउटपुट देगा:
15 3
स्पष्टीकरण:
/D/
किसी भी गैर-अंकीय वर्ण से मेल खाता है।preg_replace()
फ़ंक्शन सभी गैर-अंकीय वर्णों को एक खाली स्ट्रिंग से बदल देता है, प्रभावी ढंग से उन्हें स्ट्रिंग से हटा देता है।हालाँकि इसका एक और तरीका है जो उपरोक्त दो विकल्पों की तरह उतना विश्वसनीय नहीं है। हम स्ट्रिंग से int निकालने के लिए filter_var()
PHP अंतर्निहित फ़ंक्शन का उपयोग कर सकते हैं।
$string = "There are 15 Oranges and 3 Bananas.";
// extract numbers from string
$my_int = (int)filter_var($string ,FILTER_SANITIZE_NUMBER_INT);
echo $my_int;
यह आउटपुट देगा:
153