"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > PHP में strposX का उपयोग करके स्ट्रिंग की दूसरी या बाद की घटना का पता कैसे लगाएं?

PHP में strposX का उपयोग करके स्ट्रिंग की दूसरी या बाद की घटना का पता कैसे लगाएं?

2024-11-01 को प्रकाशित
ब्राउज़ करें:141

How to Find the Second or Subsequent Occurrence of a String in PHP Using strposX?

strpos का उपयोग करके स्ट्रिंग की दूसरी घटना का पता लगाना

PHP में स्ट्रॉप्स फ़ंक्शन पहली घटना की स्थिति खोजने के लिए एक उपयोगी उपकरण है एक बड़ी स्ट्रिंग के भीतर एक सबस्ट्रिंग का। हालाँकि, ऐसे उदाहरण हो सकते हैं जब आपको दूसरी या बाद की घटनाओं का पता लगाने की आवश्यकता हो। प्रकट होता है। हालाँकि, बड़ी स्ट्रिंग्स के लिए यह अकुशल और समय लेने वाला हो सकता है।

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

निर्दिष्ट घटना की खोज के लिए strposX फ़ंक्शन पुनरावर्ती रूप से स्वयं को कॉल करता है। यदि संख्या 1 है, तो यह स्ट्रॉप्स की तरह व्यवहार करती है और पहली घटना की स्थिति लौटाती है। यदि संख्या 1 से अधिक है, तो यह सुई की लंबाई को पिछली घटना की स्थिति में जोड़ती है और खोज जारी रखती है।

यहां strposX फ़ंक्शन का एक सरलीकृत संस्करण है:

function strposX( $घास का ढेर, $सुई, $संख्या = 0) { रिटर्न स्ट्रॉप्स ($ हेस्टैक, $ सुई, $संख्या > 1? strposX($घास का ढेर, $सुई, $संख्या - 1) strlen($सुई) : 0 ); }

function strposX($haystack, $needle, $number = 0) {
  return strpos($haystack, $needle,
    $number > 1 ?
    strposX($haystack, $needle, $number - 1)   strlen($needle) : 0
  );
}
विज्ञप्ति वक्तव्य यह लेख यहां पुनर्मुद्रित है: 1729233916 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3