[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Простая регулярка. Возможно ли ??
dima4321
Имею контент, нужная мне инфа заключена между тегами.

Ипсользую preg_math_all

Вот упрощеная маска для вашего воприятия.

$poisk='/<div>.+?<div>/si';


т.е. поясняю.

Мне нужен контент между двумя началами дивов. Именно между двумя началами. А не <div>.+?</div> !!


Отсюда вся и проблема. По такой маске он делает перескок .


Это текст.

<div>рыба</div><div>дерево</div><div>тюлень</div><div>морж </div><div>конь</div>


Моя маска найдет рыба, тюлень,конь

Зацепится я больше ни за что не могу. Такая маска <div>.+?</div> к моему контенту к сожалению не подходит, есть нюансы


Внимание а теперь вопрос

как сделать так чтобы он нашел все слова . Может можно как-то дать понять поиску , что я не хочу , чтобы он перескакивал и использовал второй <div> как начало для новых вхождений.

Реально ли. ??? Может цикл, может условие иили шшшо -нибудь ??))

$poisk='/<div>.+?<div>/si';

Очень прошу помочь ))



Спустя 22 минуты, 16 секунд (25.02.2011 - 10:39) silius написал(а):
Цитата

Такая маска <div>.+?</div> к моему контенту к сожалению не подходит, есть нюансы


Какие нюансы? может можно как то их обойти?

Спустя 14 минут, 57 секунд (25.02.2011 - 10:54) glock18 написал(а):
dima4321
тебе нужен positive lookahead типа
<div>.+?(?=<div>)

здесь подробнее об этом и другие паттерны
http://www.regular-expressions.info/refadv.html

Спустя 8 минут, 21 секунда (25.02.2011 - 11:03) inpost написал(а):
glock18
Какая прекрасная ссылка, а нету такого же на русском?

Спустя 1 минута, 53 секунды (25.02.2011 - 11:05) glock18 написал(а):
inpost
а я русский не знаю, так что по-английски читаю только smile.gif

Спустя 4 минуты, 3 секунды (25.02.2011 - 11:09) inpost написал(а):
glock18
Мне б твои проблемы =) Психологически настроил себя за период обучения школы/универститета, что для моей карьеры английский вообще не нужен... а потом решил стать программистом...

Спустя 10 минут, 1 секунда (25.02.2011 - 11:19) glock18 написал(а):
ну, без русского в России тоже непросто smile.gif

Спустя 11 минут, 58 секунд (25.02.2011 - 11:31) Snus написал(а):
google translate уже не работает?

Спустя 56 минут, 58 секунд (25.02.2011 - 12:28) dima4321 написал(а):
Про ретроспективную позитивную проверку можно почитать и в вики.

Есть конфуз:

Такой код

<div>.+?(?=<div>)

И "#(?=<div>(.*?)<div>)#is" работают.

Но они не находят последний элемент массива ..

Т.к. после него фактичекси нет тега <div>. И условие не срабатывает. Можно что-то придумать ??))



Спустя 1 минута, 25 секунд (25.02.2011 - 12:29) glock18 написал(а):
Цитата
<div>.+?((?=<div>)|$)



Спустя 1 час, 38 минут, 31 секунда (25.02.2011 - 14:08) Dron19 написал(а):
Цитата (inpost @ 25.02.2011 - 08:03)
glock18
Какая прекрасная ссылка, а нету такого же на русском?

вообще-то про паттерны я тебе давал на русском

Спустя 1 час, 53 минуты, 21 секунда (25.02.2011 - 16:01) inpost написал(а):
Dron19
там немного другое.


_____________
Работаю за еду ! __))
И за плюсики !
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.