Регулярное выражение PHP: строка изнутри скобок

У меня есть строка:

$a = "Name[value]"; 

Как получить строки «Имя» и «значение» строки в переменных из этой строки? Я не так хорош в регулярных выражениях. Благодаря!

Solutions Collecting From Web of "Регулярное выражение PHP: строка изнутри скобок"

так что это должно сделать трюк для вас:

 (.*)\[(.*)\] 

Это синтаксис 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 )