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 » » Вопросы новичков » Помощь с регул. выражениями

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

1. SunChase - 14 Октября, 2011 - 21:44:18 - перейти к сообщению
Подскажите пожалуйста как реализовать следующее:

есть переменная, содержащая текст 43-dipl-10.zip. Нужно из неё выделить последнюю номерную часть, тоесть 10.

Понимаю, что можно разбить строку при помощи explode и выделить нужную часть, но хотелось бы более простого решения. На сколько гласит интернет, с подобными задачами можно справится используя регулярные выражения, но у самого пока нету времени сесть и разобраться с этой тематикой...
2. Саныч - 14 Октября, 2011 - 21:50:41 - перейти к сообщению
без регулярки:
PHP:
скопировать код в буфер обмена
  1. $str = '43-dipl-10.zip';
  2. $m1 = explode('-', $str);
  3. $m2 = explode('.', $m1[2]);
  4. echo $m2[0];


с регуляркой:
PHP:
скопировать код в буфер обмена
  1. $str = '43-dipl-10.zip';
  2. preg_match('#(\d+)\.zip$#i', $str, $m);
  3. echo $m[1];


Можно еще и так:
3. LIME - 14 Октября, 2011 - 23:03:29 - перейти к сообщению
.
4. SunChase - 14 Октября, 2011 - 23:21:32 - перейти к сообщению
Премного благодарен

 

Powered by ExBB FM 1.0 RC1