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

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

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

 

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

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

тема: Как поймать адрес?
 
 автор: Unreal   (23.01.2008 в 18:40)   письмо автору
 
 

Добрый день

пытаюсь поймать адрес в таких строчках:
1
<div class="c-info"><a href="http://www.postindex.ru/rus/nd2/qu1200/bo3832348/wo143611" target="_blank">143611</a>,  Моск. обл., Волоколамский р-н, Сычево раб.пос., Школьная ул., д. 3</div>


2
<div class="c-info"><a href="http://www.postindex.ru/rus/nd2/qu1200/bo4519818/wo119019" target="_blank">119019</a>,  Москва, Арбат Нов. ул., д. 15<span class=noprint> :: <a href="/rus/nd2/qu10/bo4519818/sq20">Показать на карте&raquo;</a></span></div>


Хотелось бы поймать адрес (без почтового кода) и сделать это одним регулярным выражением, сейчас написал такое:

<div class="c-info"><a href="http://www.postindex.ru/(.+)" target="_blank">(.+)</a>, (.+)(<span class=noprint|</div>)

вот что оно ловит:

Москва, Арбат Нов. ул., д. 15<span class=noprint> :: <a href="/rus/nd2/qu10/bo4519818/sq20?sid=b92883c6fd4ae6dc438fe24a4192df7b">Показать на карте&raquo;</a></span>


Моск. обл., Волоколамский р-н, Сычево раб.пос., Школьная ул., д. 3


Как бы его изменить так, чтобы в первом случае находился только адрес, без остального ненужного текста?

   
 
 автор: kasmanaft   (23.01.2008 в 18:47)   письмо автору
 
   для: Unreal   (23.01.2008 в 18:40)
 

Попробуйте последнюю ".+" заменить на ".+?"

PS вообще-то желательно все заменить. Или модификатор U добавить к выражению.

   
 
 автор: Unreal   (23.01.2008 в 19:25)   письмо автору
 
   для: kasmanaft   (23.01.2008 в 18:47)
 

заработало :)
Спасибо.

а чем отличается ".+" и ".+?"?

   
 
 автор: kasmanaft   (23.01.2008 в 19:31)   письмо автору
 
   для: Unreal   (23.01.2008 в 19:25)
 

Этот "вопрос" инвертирует жадность... ".+" - жадная, ".+?" - нежадная.
Жадная ".+" пыталась захапать как можно больше, поэтому останавливалась только на div: (<span class=noprint|</div>)

   
Rambler's Top100
вверх

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