fork download
  1. <?php
  2. $text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur pulvinar erat quis aliquet pulvinar. Vivamus egestas eros at augue dictum, {mycode var1=foo|var2=zoo|var3=123a|othervarname=digit} a ultrices nisl ullamcorper. Nullam condimentum orci eros, non ornare magna accumsan in.';
  3. $a_result = 0;
  4. if (preg_match('/\{mycode\s+([^{}]+)\}/', $text, $arr) &&
  5. preg_match_all('/([A-Za-z\d]+)[=]([A-Za-z\d]+)/', $arr[1], $arr, PREG_SET_ORDER))
  6. $a_result = array_map(function ($v) { return array($v[1], $v[2]); }, $arr);
  7. print_r($a_result);
  8.  
Success #stdin #stdout 0.01s 20568KB
stdin
Standard input is empty
stdout
Array
(
    [0] => Array
        (
            [0] => var1
            [1] => foo
        )

    [1] => Array
        (
            [0] => var2
            [1] => zoo
        )

    [2] => Array
        (
            [0] => var3
            [1] => 123a
        )

    [3] => Array
        (
            [0] => othervarname
            [1] => digit
        )

)