![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]()
вопрос такой
$news="бла бла бла..."; preg_match('/[\d]{2,},[\d]{2,}/s', $news, $out); print_r($out); задан текст,в нем присутствуют числа дробные типа 39,8762, но их множество, как заставить проверять ее многократно, тоесть вывести на экран все числа удовлитворяющие условию проверки,без цикла спс за внимание. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]()
preg_match('/([0-9]+)*/',$news,$out);
проверяет все числа какие тока найдет, это в идеале, данная функция не робит ((, не находит числа видимо она для 4 версии, может и ошибаюсь, у меня 5 preg_match('/([\d]{2,},[\d]{2,}+)/s',$news,$out); сделал так, но теперь он просто дублирует первое дробное число . причем стока скока найдет дробных чисел (( |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]()
$news="курс доллара 30,0087 рубля, евро 43,8877 рубля, фунт стерлинг 47,7854 рубля, свидетельствуют данные Банка России.'";
preg_match('/([\d]{2,},[\d]{2,}+)/', $news, $out); print_r($out); нужно вырвать все эти числа и вывести на экран для обработки данным примером выводит ответ: Array ( [0] => 30,0087 [1] => 30,0087 ) ,а нужно все числа твоим же запросом выводит Array ( [0] =>) |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]()
$news="курс доллара 30,0087 рубля, евро 43,8877 рубля, фунт стерлинг 47,7854 рубля, свидетельствуют данные Банка России.'";
preg_match('/([\d]{2,},[\d]{2,}+)/', $news, $out); print_r($out); нужно вырвать все эти числа и вывести на экран для обработки данным примером выводит ответ: Array ( [0] => 30,0087 [1] => 30,0087 ) ,а нужно все числа твоим же запросом выводит Array ( [0] =>) |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 31.12.2008
Сообщений: 634
|
![]()
затупил я, просто замени preg_match на preg_match_all . и такой нюанс ,что использование ([\d]{2,} такой конструкции подразумевает ,что тебе нужно от двух цифр и до бесконечности, а такая конструкция - ([\d]+) что от одной цифры. ведь котировки могут быть и меньше 10 рублей( ну я верю в это ).
в общем в итоге Код:
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]() Код:
в принципе мне не проблема выбрать данные с любого массива, но все же интересно. p.s.13th спс что помог, сам тоже не сразу понял, preg_match_all надо было юзать), ночь-голова чумная |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 05.01.2010
Сообщений: 18
|
![]()
все работает, спасибо за помощь!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проверка | Манжосов Денис :) | Общие вопросы Delphi | 4 | 17.10.2008 16:27 |
preg_match(); | _SERGEYX_ | PHP | 6 | 09.10.2008 09:35 |
Множественная загрузка файлов | Artem | Общие вопросы Delphi | 14 | 03.08.2007 20:38 |