Forum Webscript.Ru

Программирование => PHP => Тема начата: xfozzi от 13 Июня 2002, 17:23:54

Название: хитро разбить строку
Отправлено: xfozzi от 13 Июня 2002, 17:23:54
есть строка в которой есть числа и между ними пробелы разной длины, может я глупость говорю, но explode их не хавает, а для substr числа разной длины. Как разбить такую строку на отдельные числа?
Название: хитро разбить строку
Отправлено: Metaller от 13 Июня 2002, 18:42:45
rtfm по регуляркам

или srt_replace "два пробела" на "один пробел" и потом эксплод.
Название: хитро разбить строку
Отправлено: xfozzi от 13 Июня 2002, 18:53:58
понимаешь, вся фишка в том , что пробелы эти идут за один символ . Может я чего не догоняю, но выглядет этот пробел на один символ или на 10  занимает он один символ.
Название: хитро разбить строку
Отправлено: Макс от 13 Июня 2002, 19:17:42
Цитировать
но explode их не хавает,

$ar=explode(" ", $str); не работает?
Название: хитро разбить строку
Отправлено: GotZfild от 13 Июня 2002, 21:38:59
$str = "200 1      453   23            574   2 3421545";
preg_match_all("/\\\\d+/", $str, $matches);
$digits = $matches[0];
// $digits  - массив из чисел
Название: хитро разбить строку
Отправлено: Fury от 14 Июня 2002, 12:12:56
Цитировать
понимаешь, вся фишка в том , что пробелы эти идут за один символ . Может я чего не догоняю, но выглядет этот пробел на один символ или на 10 занимает он один символ.

xfozzi  - они на странице выглядят как один символ?
Ну оно всегда так было: какая бы ни была куча пробелов, браузером они отображаются, как один пробел. Но в исходной строке они есть все. Тебе ведь надо исходную строку распарсивать, а не та, что в браузере показывается.
Название: хитро разбить строку
Отправлено: Меняздесьдавнонет от 16 Июня 2002, 17:25:34
preg_split (http://www.php.net/preg_split)