Forum Webscript.Ru

Программирование => PHP => Тема начата: Mefisto от 25 Июля 2007, 23:31:22

Название: выделить число из строки
Отправлено: Mefisto от 25 Июля 2007, 23:31:22
как проще выделить из строки вида "п54564жк" число 54564?

спасибо за ответы
Название: выделить число из строки
Отправлено: Mefisto от 25 Июля 2007, 23:43:58
сам додумался
preg_replace("|[А-Яа-я]{1}|","",$stroka)
Название: выделить число из строки
Отправлено: andymc от 26 Июля 2007, 11:03:18
// а лучше
preg_replace(\'/[^0-9]+/i\',\'\',$stroka)
Надо также заметить, что [А-Яа-я] не учитывает букву ё
Название: выделить число из строки
Отправлено: #jpcarsru от 04 Августа 2007, 14:48:07
//А еще лучше
// а лучше
preg_replace(\'/[^\\d]+/s\',\'\',$stroka)
Название: выделить число из строки
Отправлено: hanslinger от 04 Августа 2007, 22:50:07
только модификатор s тут не нужен, а также +
Название: выделить число из строки
Отправлено: AlieN от 07 Августа 2007, 01:05:43
а совсем хорошо
echo preg_replace("\'(\\D+)\'si","",$str);
Название: выделить число из строки
Отправлено: #jpcarsru от 07 Августа 2007, 08:00:09
хотя стоит вообще подругому сделать...
preg_match_all(\'/(\\d+)/s\',$string,$pocked);
если сторока "п54564жк6к" то предыдущие варианты выдадут "545646" ....
Название: выделить число из строки
Отправлено: hanslinger от 07 Августа 2007, 12:54:45
Цитировать
preg_replace("\'(\\D+)\'si","",$str);

здесь не нужны ни скобки, ни плюс, ни оба модификатора
Цитировать
сторока "п54564жк6к" то предыдущие варианты выдадут "545646" ....

в первоначальном варианте задачи ничего не было об этом :-)