[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: explode() по цифрам
asdf27
Доброго дня, форум.

Помогите с таким моментом:

имеется строка 'text text 711 1292 1241 text 273832';

Мне нужно разобрать её на массив, но не по одной цифре. В итоге должен получиться такой массив:

[0]=>'text text', [1]=>'711 1292 1241', [2]=>'text ', [3]=>'273832'. Т.е. мне надо отделить текст и цифры.

Используя выражение preg_match('/(\d+)/s', "$a", $b), режет по одной цифре. Хелп, плиз.
kaww
Может быть так:
print_r(explode('.', preg_replace("/(([^\d])\s(\d)|(\d)\s([^\d]))/", "$2$4.$3$5", "text text 711 1292 1241 text 273832")));
FatCat
Не люблю регулярки
$txt = 'text text 711 1292 1241 text 273832';
$txt = trim($txt);
$array = array();
$t = "";
$l = strlen($txt);
for($i=0;$i<$l;$i++)
{
if( "".intval($txt[$i]) === $txt[$i] )$f = "nun";
elseif( $txt[$i] == " " );
else $f = "chr";
if(!$i)$of = $f;

if($of == $f)
{
$t .= $txt[$i];
}
else
{
$array[] = trim($t);
$t = $txt[$i];
}

$of = $f;
}
$array[] = trim($t);
echo("<pre>");print_r($array);echo("</pre>");


_____________
Бесплатному сыру в дырки не заглядывают...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.