Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: не первое совпадение, а последнее?
 
 автор: steels   (04.12.2006 в 14:20)   письмо автору
 
 

2002 год Opel
2002 год Volvo
2004 год Audi
2005 год Bmw
2005 год Hummer Цена 10000
2005 год Mercedes
2002 год Nissan
2006 год Bmw
2006 год Bmw Цена 20000

как вывести при помощи preg_match_all
год где есть цена?????
пробовал, но ничего не получилось
или выводит все годы
или первую например - 2002 (Nissan)

а мне нужно 2006 где есть цена?

   
 
 автор: kasmanaft   (04.12.2006 в 14:25)   письмо автору
 
   для: steels   (04.12.2006 в 14:20)
 

Вот, примерно так:

<?
$text 
'    
2002 год Opel
2002 год Volvo
2004 год Audi
2005 год Bmw
2005 год Hummer Цена 10000 
2005 год Mercedes
2002 год Nissan
2006 год Bmw
2006 год Bmw Цена 20000'
;
preg_match_all ("#200. год (.+?) Цена ([\d]+)#"$text$regs);
unset(
$regs[0]);
echo 
"<pre>";
print_r($regs);
?>

   
 
 автор: steels   (04.12.2006 в 14:31)   письмо автору
 
   для: kasmanaft   (04.12.2006 в 14:25)
 

Мне годы были нужны
2005 и 2006

   
 
 автор: kasmanaft   (04.12.2006 в 14:42)   письмо автору
 
   для: steels   (04.12.2006 в 14:31)
 

Ну тогда вот так попробуйте

preg_match_all ("#200[56] год * * * * * * *

   
 
 автор: steels   (04.12.2006 в 14:47)   письмо автору
 
   для: kasmanaft   (04.12.2006 в 14:42)
 

млин как объяснить ааа :( мне цифры годов нужны
мне не нужно названий и цены

   
 
 автор: kasmanaft   (04.12.2006 в 15:26)   письмо автору
 
   для: steels   (04.12.2006 в 14:47)
 

гг, так и нужно было говорить :)
вот регулярное выражение: #200[56] год (.+?) Цена ([\d]+)#
то, что стоит в скобках, то заносится в массив ... соответственно, если нужен год, нужно взять его в скобки (а если не нужны названия - убрать скобки)

#(200[56]) год .+? Цена [\d]+#

   
 
 автор: steels   (04.12.2006 в 16:22)   письмо автору
 
   для: kasmanaft   (04.12.2006 в 15:26)
 

огромный респект

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования