संभव डुप्लिकेट:मैं preg_match से केवल नामित कैप्चर कैसे प्राप्त कर सकता हूं?
$string = 'Hello, my name is Linda. I like Pepsi.'; $regex = '/name is (?<name>[^.]+)\..*?like (?<likes>[^.]+)/'; preg_match($regex, $string, $matches); print_r($matches);
यह प्रिंट:
Array ( [0] => name is Linda. I like Pepsi [name] => Linda [1] => Linda [likes] => Pepsi [2] => Pepsi )
मैं कैसे जीई कर सकते हैं
how to force preg_match preg_match_all to return only named parts of regex expression
मैं इस स्निपेट यह टी बस वापस जाने के लिए:
Array
(
[name] => Linda
[likes] => Pepsi
)
परिणाम सरणी की छानने का सहारा के बिना:
foreach ($matches as $key => $value) {
if (is_int($key))
unset($matches[$key]);
}
'foreach { अगर (is_int ($ ट)) { सेट नहीं ($ मैचों [$ (k $ => $ वी के रूप में $ मैचों) कश्मीर]); } } 'संख्यात्मक कुंजी को पट्टी करने और केवल नामित रखने के लिए। – Radu