I was having the same problem. The second way was what I was looking for.
Thank you so much for your help--I did not know about preg_match_all(). very cool....thanks again. -Andres Shawn McKenzie wrote:
Shawn McKenzie wrote:Well in your approach you get a bunch of empty elements where the spaces are. Here are two ways but I'm sure one preg_match_all() without the explodes and loop could do it (some guru will show us): //one way $text = 'xxx xxxx xx xxxxx xx xxx xx xxxxx x xxx xx xxxxxx xx xxx xx xxxx xx xx'; $lines = explode(PHP_EOL, $text); foreach($lines as $line) { $temp = explode(' ', $line); $result[] = array_filter($temp, 'reduce'); } function reduce($var) { return !empty($var); } print_r($result);Array ( [0] => Array ( [0] => xxx [2] => xxxx [4] => xx [6] => xxxxx [8] => xx [11] => xxx ) [1] => Array ( [0] => xx [2] => xxxxx [5] => x [7] => xxx [9] => xx [11] => xxxxxx ) [2] => Array ( [0] => xx [2] => xxx [4] => xx [6] => xxxx [8] => xx [11] => xx ) )//another way $text = 'xxx xxxx xx xxxxx xx xxx xx xxxxx x xxx xx xxxxxx xx xxx xx xxxx xx xx'; $lines = explode(PHP_EOL, $text); foreach($lines as $line) { preg_match_all('|([^\s]+)+|', $line, $matches); $result[] = $matches[1]; } print_r($result);Array ( [0] => Array ( [0] => xxx [1] => xxxx [2] => xx [3] => xxxxx [4] => xx [5] => xxx ) [1] => Array ( [0] => xx [1] => xxxxx [2] => x [3] => xxx [4] => xx [5] => xxxxxx ) [2] => Array ( [0] => xx [1] => xxx [2] => xx [3] => xxxx [4] => xx [5] => xx ) ) There is a difference in the key numbering though if that is important.
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php

