PHP - регулярные выражения, поиск нескольких значений

UD

Новичок
PHP - регулярные выражения, поиск нескольких значений

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

Пример:
$date = "2003-03-17, 2003-03-18, 2003-03-19";
ereg ("([0-9]{4,4}-[0-9]{2,2}-[0-9]{2,2})", $date, $regs);
echo $regs[0];
Данный код найдет и выведет только первую дату: 2003-03-17, а мне нужно что бы выводились все.
Пробывал использовать while, foreach все тоже самое.

Для perl существуют модификаторы, позволяющие делать то, что мне нужно, но я хочу решить данную задачу на php, т.к. скрипт будет написан на php, perl я не знаю.

На perl решается так:
Модификатор g делает поиск глобальным. В данном (скалярном) контексте perl помнит, где он остановился в строке при предыдущем поиске. Следующий поиск продолжается с отложенной точки. Без модификатора g команда m/.../ будет упорно находить первое вхождение буквы х, и цикл будет продолжаться бесконечно.
В отличие от команды m/.../ команда s/.../.../ с модификатором g выполняет глобальную замену за один раз, работая так, будто внутри нее уже имеется встроенный цикл поиска, подобный приведенному выше. Следующий пример за один раз заменяет все вхождения х на z:
$text = "Here is texxxxxt.";
$text =~ s/x/z/g;
print $text;
Here is tezzzzzt.

Для ereg не существует модификаторов, тогда я решил использовать заместо него preg_match, но для него не нашел модификаторов позволяющих решить данную задачу.
Как быть? Очень прошу помочь.

Заранее спасибо.
 

dimagolov

Новичок
Для perl существуют модификаторы, позволяющие делать то, что мне нужно, но я хочу решить данную задачу на php, т.к. скрипт будет написан на php, perl я не знаю
В мемориез!!!!

открой для себя ф-ии preg_*
 

UD

Новичок
Я сейчас решил себя переобучить, забыть php и начать 'м'учить perl, я с помощью perl'a наконец таки смогу делать то, что нужно мне и вам в дальнейшем, это тому кто не умеет программировать.
Уже изучаю, в процентах изучил на 11%.
Привожу диаграмму:

-- 11%
-
- - ---------
- - -
- -------

-~{}~ 18.04.09 20:21:

Сделайте сайт perl club, я там буду вопросы задавать касающиеся перла, а вдруг мне все таки перл не подойдет и те 11% что я выучил будут напрасными, когда я мог это время потратить на разработку полезных скриптов!!!
 

DiMA

php.spb.ru
Команда форума
тебе же сказали, что пхп обладает все функционалом по поиску и замены перл-регов.

> Данный код найдет и выведет только первую дату: 2003-03-17, а мне нужно что бы выводились все.

покопайся в опилках, потом в мануале
preg_match_all

> Для perl существуют модификаторы, позволяющие делать то, что мне нужно

на пхп тоже, либо другие функции, либо опции функций
по-умолчанию, все делает preg_replace (твоя мега "глобальность")
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
UD перестань писать, пожалуйста
твои посты неприятны, их будут продолжать переносить в
мусорку

нас много и нам это нетрудно
 

DiMA

php.spb.ru
Команда форума
с этим дурачком... а что, он уже скончался или ответы по существу у тебя не в моде, типа ты там не на какой-то выставке? .-)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
DiMA это не дурачок, это тролль, что большая разница
в мусорке уже коллекция его постов :)
 

DiMA

php.spb.ru
Команда форума
а фигли ты тогда в корзину этот понос никто не перенес?

у меня сейчас хорошее настроение, я хоть с ботом могу пообщаться =)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
DiMA
судя по динамике темы в мусорке - переносят, только он быстро пишет, похоже :)

-~{}~ 18.04.09 20:10:

одну тему стоит оставить просто для того чтобы он прочитал, что его посты не случайно исчезают ;)
 

DiMA

php.spb.ru
Команда форума
да нифига не быстро... я вот все жду с интересном, какая еще бредятина появится... Пусто .-((
 

Ramzes

Новичок
Автор оригинала: DiMA
да нифига не быстро... я вот все жду с интересном, какая еще бредятина появится... Пусто .-((
хватит медитировать, лучше приезжай в гости на кагор с кулечами, к 1ой звезде успеешь!!
 

DiMA

php.spb.ru
Команда форума
спасибо Рома, только я не крещен.. может быть в будущем..
 
Сверху