दिलचस्प पोस्ट
कैसे iPhone पर एक रंगीन 1×1 UIImage गतिशील बनाने के लिए? अरब के समय के लिए सापेक्ष आयात ओडीबीसी के बिना जावा से ऐक्सेस डाटाबेस को जोड़ना Google खोज परिणाम साइट मानचित्र? SQL सर्वर बीसीपी निर्यात दूषित फ़ाइल? सी # में मौन असफलता, ऐसा प्रतीत होता है कि अप्रचलित अपवाद जो प्रोग्राम को क्रैश नहीं करता एक गतिशील आवंटित सरणी के साथ sizeof का उपयोग करना मर्केटर प्रक्षेपण पर पिक्सेल (एक्स, वाई) में अक्षांश / रेखांश बिंदु को कन्वर्ट करें Cayayer subclass की कस्टम प्रॉपर्टी को एनिमेट करना प्रोटोटाइप के तरीकों को असाइन करना * अंदर * कन्स्ट्रक्टर फ़ंक्शन – क्यों नहीं? पुनरावृत्त एल्गोरिदम को पुनरावृत्त लोगों को बदलने के लिए डिजाइन पैटर्न CMake का उपयोग करके Boost के साथ C ++ प्रोग्राम को लिंक कैसे करें I UITableView की पृष्ठभूमि को स्पर्श करके कीबोर्ड को खारिज करें NSString का आकार कैसे प्राप्त करें जावास्क्रिप्ट रेगेक्स लटका हुआ है (वी 8 का उपयोग कर)

स्ट्रिंग वाले PHP सरणी तत्व की खोज करें

$example = array('An example','Another example','Last example'); 

मैं उपर्युक्त सरणी में "अंतिम" शब्द के लिए एक ढीली खोज कैसे कर सकता हूं?

 echo array_search('Last example',$example); 

उपरोक्त कोड केवल मान की कुंजी गूंज करेगा यदि सुई वास्तव में मूल्य में सब कुछ मेल खाता है, जो कि मैं नहीं चाहता है। मुझे ऐसा कुछ चाहिए:

 echo array_search('Last',$example); 

और मैं मूल्य की गूंजता चाहता हूं अगर मान में शब्द "अंतिम" होता है

वेब के समाधान से एकत्रित समाधान "स्ट्रिंग वाले PHP सरणी तत्व की खोज करें"

अपने खोज मानदंड से मेल खाने वाले मान प्राप्त करने के लिए, आप array_filter फ़ंक्शन का उपयोग कर सकते हैं:

 $example = array('An example','Another example','Last example'); $searchword = 'last'; $matches = array_filter($example, function($var) use ($searchword) { return preg_match("/\b$searchword\b/i", $var); }); 

अब $matches आपके मूल सरणी से केवल तत्व शामिल होंगे, जिसमें अंतिम शब्द (केस-असंवेदनशील) शामिल हैं।

यदि आपको मापदंड से मेल खाने वाले मानों की चाबी मिलनी है, तो आपको सरणी पर लूप की आवश्यकता है:

 $example = array('An example','Another example','One Example','Last example'); $searchword = 'last'; $matches = array(); foreach($example as $k=>$v) { if(preg_match("/\b$searchword\b/i", $v)) { $matches[$k] = $v; } } 

अब सरणी $matches में मूल सरणी से मुख्य-मूल्य वाले जोड़े हैं जहां मान (केस-असंवेदनशील) शब्द अंतिम होता है

 function customSearch($keyword, $arrayToSearch){ foreach($arrayToSearch as $key => $arrayItem){ if( stristr( $arrayItem, $keyword ) ){ return $key; } } } 
 $input= array('An example','Another example','Last example'); $needle = 'Last'; $ret = array_keys(array_filter($input, function($var) use ($needle){ return strpos($var, $needle) !== false; })); 

यह आपको उन सारी चाबियाँ देगी जिनके मूल्य में सुई होनी चाहिए।

यह पहले मैच के साथ एक तत्व की कुंजी पाता है:

 echo key(preg_grep('/\b$searchword\b/i', $example)); 

और अगर आपको सभी चाबी की जरूरत है तो foreach का उपयोग करें:

 foreach (preg_grep('/\b$searchword\b/i', $example) as $key => $value) { echo $key; } 

मैं ओपी की समस्या का समाधान भी देख रहा था और मैंने इस सवाल पर गूगल के जरिये ठोकर खाई। हालांकि, इन उत्तरों में से कोई भी मेरे लिए ऐसा नहीं करता है इसलिए मैं कुछ अलग से कुछ आया जो कि अच्छी तरह से काम करता है

 $arr = array("YD-100 BLACK", "YD-100 GREEN", "YD-100 RED", "YJ-100 BLACK"); //split model number from color $model = explode(" ",$arr[0]) //find all values that match the model number $match_values = array_filter($arr, function($val,$key) use (&$model) { return stristr($val, $model[0]);}, ARRAY_FILTER_USE_BOTH); //returns //[0] => YD-100 BLACK //[1] => YD-100 GREEN //[2] => YD-100 RED 

यह केवल PHP 5.6.0 और इसके बाद के संस्करण के साथ काम करेगा।