У меня есть строка:
$a = "Name[value]";
Как получить строки «Имя» и «значение» строки в переменных из этой строки? Я не так хорош в регулярных выражениях. Благодаря!
так что это должно сделать трюк для вас:
(.*)\[(.*)\]
Это синтаксис PHP:
<?php $subject = "Name[value]"; $pattern = '/(.*)\[(.*)\]/'; preg_match($pattern, $subject, $matches); print_r($matches); ?>
Вывод:
Array ( [0] => Name[value] [1] => Name [2] => value )
Наслаждаться.
<?php /** * Regex Quick Extraction - ignore $matches[0]; */ $a = "Name[value]"; preg_match('/([^\]]*)\[([^\]]*)\]/',$a,$matches); if(count($matches) > 0) { print_r($matches); } ?>
Попробуй это:
<?php $a = "Name[value]"; preg_match('/(?<name>.*?)\[(?<value>.*[^\]]+)/', $a, $matched); echo '<pre>'; print_r($matched); ?>
вывод:
Array ( [0] => Name[value [name] => Name [1] => Name [value] => value [2] => value )