fork(2) download
  1. <?php
  2.  
  3. $source=<<<EOT
  4. <select class="parent1">
  5.   <option value="1">First child</option>
  6.   <option value="2">Second child</option>
  7.   <option value="3">Third child</option>
  8. </select>
  9.  
  10. <select class="parent2">
  11.   <option value="4">Fourth child</option>
  12.   <option value="5">Fifth child</option>
  13.   <option value="6">Sixth child</option>
  14. </select>
  15. EOT;
  16.  
  17. '~(?:<select class="parent1">|\G)\s*\K<option value="(.*?)">(.*?)</option>~',
  18. $source, $matches);
  19.  
  20. print_r($matches);
  21. ?>
Success #stdin #stdout 0.01s 20520KB
stdin
Standard input is empty
stdout
Array
(
    [0] => Array
        (
            [0] => <option value="1">First child</option>
            [1] => <option value="2">Second child</option>
            [2] => <option value="3">Third child</option>
        )

    [1] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [2] => Array
        (
            [0] => First child
            [1] => Second child
            [2] => Third child
        )

)