Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с ругклярками
Форумы портала PHP.SU » PHP » Регулярные выражения » Помогите с ругклярками

Страниц (1): [1]
 

1. vanicon - 25 Мая, 2011 - 02:32:15 - перейти к сообщению
Есть текст вот такого типа: +9...+15, -9...+15 и т.д
И с помощью регулярных выражений нужно назначить в переменную $min = '+9'; а в переменную $max = '+15';
Я делал это без регулярных выражение путем подсчета длины символов и так далее...
И получился громоздкий код, для такой не сложной задачи, а регулярных выражений достаточно пару строк.
Подскажите как тоже самое сделать с помощью регулярных выражений
2. ReniFerre - 25 Мая, 2011 - 03:52:21 - перейти к сообщению
я бы использовал функцию preg_split(), а затем прошелся бы по результирующему массиву.
3. Champion - 25 Мая, 2011 - 08:03:18 - перейти к сообщению
Да, правильно. Регулярные выражения никаких арифметических действий не выполняют. Чтобы сравнить то, что сматчилось, надо обработать дополнительно.
4. vanicon - 25 Мая, 2011 - 12:49:09 - перейти к сообщению
Нашел на форуме способ вытащить минимальное кол-во температуры
PHP:
скопировать код в буфер обмена
  1.  
  2. $temperatura_min = '+9...+15';
  3. $temperatura_min = preg_replace('/\…*/','.',$temperatura_min);
  4. $temperatura_min = preg_replace('/\..*/','',$temperatura_min);
  5.  
5. OrmaJever - 25 Мая, 2011 - 13:03:28 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $temperatura_min = '+9...+15';
  2. list($min, $max) = explode('...', $temperatura_min);
  3. echo $min, ' - ', $max;

Закатив глазки

 

Powered by ExBB FM 1.0 RC1