Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Не могу вырезать 3 набора цифр
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Не могу вырезать 3 набора цифр

Страниц (1): [1]
 

1. android - 24 Декабря, 2012 - 17:31:31 - перейти к сообщению
Здравствуйте, сколько не мужался с preg_match так и не смог вырезать по 3 набора цифр в каждой строчке и загнать их в массив

Есть текст:

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. Filesystem           1K-blocks      Used Available Use% Mounted on
  3. /dev/md2             1065282604   2323544 1009271976   1% /
  4. /dev/md1                507836     36252    445372   8% /boot
  5. /dev/md3             1808082464   3063488 1713896940   1% /var/www
  6.  


Кол-во строчек - n'ное
Кол-во пробелов n'ное
В первом столбике могут быть как и цифры так и буквы разной длинны.

Задача вырезать цифры что бы были примерно в таком формате:

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. array(3) {
  3.   [0]=>
  4.   array(3) {
  5.     [1]=>
  6.     string(10) "1065282604"
  7.     [2]=>
  8.     string(7) "2323544"
  9.     [3]=>
  10.     string(10) "1009271976"
  11.   }
  12.   [1]=>
  13.   array(3) {
  14.     [1]=>
  15.     string(6) "507836"
  16.     [2]=>
  17.     string(5) "36252"
  18.     [3]=>
  19.     string(6) "445372"
  20.   }
  21.   [2]=>
  22.   array(3) {
  23.     [1]=>
  24.     string(10) "1808082464"
  25.     [2]=>
  26.     string(7) "3063488"
  27.     [3]=>
  28.     string(10) "1713896940"
  29.   }
  30. }
  31.  

(Добавление)
Спасибо за любую помощь!
2. ams - 24 Декабря, 2012 - 17:58:08 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $text ="Filesystem           1K-blocks      Used Available Use% Mounted on
  2. /dev/md2             1065282604   2323544 1009271976   1% /
  3. /dev/md1                507836     36252    445372   8% /boot
  4. /dev/md3             1808082464   3063488 1713896940   1% /var/www";
  5.  
  6. preg_match_all("#(\d{3,})#", $text, $result);
  7.  
  8. echo '<pre>';
  9.  
  10. $result = array_chunk($result[1], 3);
  11. print_r($result);
3. android - 24 Декабря, 2012 - 18:50:57 - перейти к сообщению
Спасибо!

 

Powered by ExBB FM 1.0 RC1