Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Опять регулярные

Ответить
Настройки темы
Опять регулярные

Пользователь


Сообщения: 58
Благодарности: 1

Профиль | Отправить PM | Цитировать


Есть вот такой код:

Код: Выделить весь код
$string="><A name=9><FONT
color=#dddddd><B>9. Ghettoblaster</B></FONT>
<FONT color=#dddddd><B>10. The Oath Of The Goat</B></FONT><BR><BR>I have";

preg_match_all("/(?<=#dddddd><B>\d\.\s).+?(?=<\/B>)/m", $string, $matches);

print_r($matches);
Мне нужно чтобы из $string выдернулось:

Ghettoblaster и
The Oath Of The Goat

но выдергивается только
Ghettoblaster

Какбы переделать регуляр чтобы это поправить?

Отправлено: 16:33, 08-07-2004

 

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Dutchman Mihel
$matches - это же массив, а не строка!

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 18:20, 08-07-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 58
Благодарности: 1

Профиль | Отправить PM | Цитировать


Vlad Drakula

конечно массив
и что из того

print_r($matches); выдает только одно значение

Отправлено: 11:27, 09-07-2004 | #3


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Dutchman Mihel
Цитата:
preg_match_all("/(?<=#dddddd><B>\d\.\s).+?(?=<\/B>/m", $string, $matches);
\d-это число из 0-9, а у тебя там стоит 10, а 10 не входит в \d, поэтому надо вместо \d написать \d{2}, чтобы находились и 0, и 1

Добавлено:

Vlad Drakula
print_r может также весь массив выводить

-------
Fortes fortuna adiuvat


Отправлено: 23:06, 09-07-2004 | #4


Аватара для Guest

Guest


Профиль | Цитировать


vadimiron

спасибо, не заметил

Получилось вот так:

/(?<=#d{6}><B>\d\.\s|#d{6}><B>\d{2}\.\s).+?(?=<\/B>/m


Отправлено: 18:17, 11-07-2004 | #5



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Опять регулярные

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
регулярные выражения Ginger Вебмастеру 60 21-03-2012 01:11
Java - Регулярные выражения Java ValVlaGen Программирование и базы данных 0 19-10-2009 08:06
Разное - PHP - регулярные выражения: HELP GoldenOrb Программирование и базы данных 10 08-09-2008 16:47
Опять ХР, опять вин98, опять сеть =( Arioch Сетевые технологии 7 01-04-2003 11:45
Регулярные выражения est Хочу все знать 6 02-10-2002 14:17




 
Переход