RegEx: Split bei Leerzeichen und Anführungszeichen berücksichtigen

Regular-Expression mit PHP und preg_match_all, der einen Text nach Leerzeichen aufsplittet, Text innerhalb von Anführungszeichen aber zusammen lässt.

$string = "Dies ist \"ein Text\" der gesplittet werden soll, ohne dass \"der Text\" in Anführungszeichen auseinandergerissen wird";
if (preg_match_all("/\"[^\"]+\"|\b[^\s]+\b/", $string, $matches))
  print_r($matches[0]);

ergibt folgende Ausgabe

Array
(
 [0] => Dies
 [1] => ist
 [2] => "ein Text"
 [3] => der
 [4] => gesplittet
 [5] => werden
 [6] => soll
 [7] => ohne
 [8] => dass
 [9] => "der Text"
 [10] => in
 [11] => Anführungszeichen
 [12] => auseinandergerissen
 [13] => wird
)