PHP में preg_match_all() फ़ंक्शन का उपयोग कैसे करें

Php Mem Preg Match All Fanksana Ka Upayoga Kaise Karem



preg_match_all () PHP में एक अंतर्निहित फ़ंक्शन है जिसका उपयोग स्ट्रिंग में विशिष्ट पैटर्न से मिलान करने के लिए किया जाता है। आप इस फ़ंक्शन का उपयोग रेगुलर एक्सप्रेशन मैच करने और स्ट्रिंग्स से डेटा निकालने के लिए कर सकते हैं। यह उन मामलों में समय और प्रयास बचा सकता है जहां आपको एक पैटर्न की कई घटनाओं की खोज करने की आवश्यकता होती है और इसका व्यापक रूप से PHP के टेक्स्ट पार्सिंग और डेटा निष्कर्षण अनुप्रयोगों में उपयोग किया जाता है।

वाक्य - विन्यास

निम्नलिखित का उपयोग करने के लिए वाक्य रचना है preg_match_all पीएचपी में:







preg_match_all ( नमूना , इनपुट , माचिस , झंडे , ओफ़्सेट )

preg_match_all निम्नलिखित मापदंडों को स्वीकार करता है, तीन अनिवार्य पैरामीटर हैं और दो वैकल्पिक हैं:



  • नमूना : यह अनिवार्य पैरामीटर है; इसमें नियमित अभिव्यक्ति होती है जिसे खोजने की आवश्यकता होती है।
  • इनपुट : दूसरा भी एक अनिवार्य पैरामीटर है, क्योंकि यह वह स्ट्रिंग है जिसमें खोज की जाती है।
  • माचिस : यह आउटपुट को सभी मैचों वाले सरणी में संग्रहीत करता है।
  • झंडे : यह वर्णन करता है कि कैसे खोज या मिलान सरणी संरचित है। यह फ़ंक्शन की खोज के व्यवहार को संशोधित करता है। निम्नलिखित झंडों का उपयोग किया जा सकता है:
  • ओफ़्सेट : यह वैकल्पिक पैरामीटर है जो खोज की आरंभिक स्थिति को निर्दिष्ट करता है।
झंडा विवरण
PREG_PATTERN_ORDER परिणामी सरणी में नियमित अभिव्यक्ति के प्रत्येक तत्व के लिए सरणी के सभी मिलान होते हैं।
PREG_SET_ORDER मिलान सरणी के प्रत्येक तत्व में स्ट्रिंग के पाए गए मैचों में से प्रत्येक के लिए प्रत्येक समूह से मिलान होते हैं।
PREG_OFFSET_CAPTURE यह विषय स्ट्रिंग में उनके संबंधित बाइट ऑफसेट स्थिति के साथ मैच लौटाता है।
PREG_UNMATCHED_AS_NULL बेजोड़ पैटर्न NULL के रूप में रिपोर्ट करेंगे।

उदाहरण 1

का उपयोग करने के निम्नलिखित उदाहरण पर विचार करें preg_match_all () PHP में कार्य करता है। इस कोड में, हम शब्द खोज रहे हैं लिनक्स तार में। यह फ़ंक्शन शब्द के विरुद्ध मिले मिलानों की संख्या को आउटपुट करता है लिनक्स :





$ स्ट्रिंग = 'हैलो लिनक्स के प्रति उत्साही, LinuxHint में आपका स्वागत है!' ;

$ पैटर्न = '/लिनक्स/' ;

$ मेल खाता है = सरणी ( ) ;

preg_match_all ( $ पैटर्न , $ स्ट्रिंग , $ मेल खाता है ) ;

print_r ( $ मेल खाता है [ 0 ] ) ;

?>





उदाहरण 2

इस उदाहरण कोड में, हम स्ट्रिंग में ई शब्द खोज रहे हैं। खोज केस-असंवेदनशील बनाने के लिए छोटे i का उपयोग किया जाता है। यह ई या ई शब्द की सभी स्ट्रिंग घटनाओं को वापस कर देगा:



$ स्ट्रिंग = 'यूएसए में आपका स्वागत है।' ;

$patternRex = '/ई/मैं' ;

$ मैच मिला = preg_match_all ( $patternRex , $ स्ट्रिंग , $ मेल खाता है ) ;

अगर ( $ मैच मिला ) {

गूंज '<पूर्व>' ;

print_r ( $ मेल खाता है ) ;

}

?>



उदाहरण 3

यदि आप जिस पैटर्न की तलाश कर रहे हैं वह स्ट्रिंग में मौजूद नहीं है, तो फ़ंक्शन एक त्रुटि का संकेत देते हुए गलत रिटर्न देगा। इसे हैंडल करने के लिए आप if-else स्टेटमेंट का इस्तेमाल कर सकते हैं। यदि प्रतिमान नहीं मिलता है, तो आप उपयोगकर्ता को यह सूचित करने के लिए कि प्रतिमान नहीं मिला है, अन्य कथन का उपयोग करके एक संदेश प्रिंट कर सकते हैं।



$ स्ट्रिंग = 'PHP एक लोकप्रिय पटकथा भाषा है' ;

$patternRex = '/पेशाब करना/' ;

$ मैच मिला = preg_match_all ( $patternRex , $ स्ट्रिंग , $ मेल खाता है ) ;

अगर ( $ मैच मिला ) {

गूंज '<पूर्व>' ;

गूंज 'मेल मिल गया।' ;

print_r ( $ मेल खाता है ) ;

} अन्य {

गूंज 'कोई मेल नहीं मिला।' ;

}

?>

टिप्पणी : द <पूर्व> उपरोक्त कोड में टैग का उपयोग आउटपुट को स्वरूपित करने के लिए किया जाता है।

जमीनी स्तर

रेगुलर एक्सप्रेशन PHP में टेक्स्ट को खोजने और मैनिप्युलेट करने के लिए एक शक्तिशाली उपकरण है। preg_match_all () फ़ंक्शन एक अंतर्निहित PHP फ़ंक्शन है जिसका उपयोग स्ट्रिंग के विरुद्ध नियमित अभिव्यक्ति मिलान करने और पैटर्न की सभी घटनाओं को पुनर्प्राप्त करने के लिए किया जाता है और यदि पैटर्न मौजूद नहीं है, तो यह गलत होगा। समझना preg_match_all () फ़ंक्शन उपयोगकर्ताओं को PHP में टेक्स्ट डेटा को बेहतर ढंग से संभालने और संसाधित करने में मदद करेगा।