![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Rezzonans |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 21.4.2005 Репутация: нет Всего: нет |
Вот, вообщем, такие задания нынче дают при устройстве на работу.. Проблема заключается в том, что никак не получается составить регулярное выражение для того, что б из файла считать все целые цифры. Максимум что получилось - это вот:
Но это не вариант, ибо в результате проскакивает число +3.14. К слову сказать, плюс тож убрать не получается. Не бейте ногами, подскажите пожалуйста регулярку, я в них не силен :( --------------------
Первый детектор лжи был собран из ребра мужчины. Впрочем, до сих пор, никаких изменений не притерпел |
||||
|
|||||
ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 96 Всего: 386 |
Rezzonans, разбить файл по пробельным символам и все preg_split('/\s+/', ...). Все элементы должны быть числами.
для проверки, что это целое число - используй ctype_digit. для остального можно floatval использовать. Если не число - будет 0. на сумму не влияет. Проверить правильно получилось или нет - тоже довольно просто floatval($s)==$s - если истина, значит чисто конкретно число... регулярка здоровая получится, чтобы корректно проверить на число. Числа бывают с + - , с точкой, мантисой и отрицательной-положительной мантисой. Но можно предложить грязненькую-простенькую /^[0-9Е\.+-]+$/ для фильтра значений в этом файле достаточно. А floatval покажет что там неправильно на самом деле. Уникальные значения делаются array_unique остальные задачи пока не решал? ![]() Это сообщение отредактировал(а) ksnk - 14.7.2010, 09:58 -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! ![]() |
|||
|
||||
Rezzonans |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 145 Регистрация: 21.4.2005 Репутация: нет Всего: нет |
Ну вот, вообщем, криво-косо, но сделал. Может кому пригодиться.
ksnk, Вам спасибо за помощь, array_unique очень пригодилась. Присоединённый файл ( Кол-во скачиваний: 26 ) ![]() --------------------
Первый детектор лжи был собран из ребра мужчины. Впрочем, до сих пор, никаких изменений не притерпел |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |