А как выделить область самого объемлющего тега из одинаковых тегов?
Спустя 13 минут, 55 секунд (27.09.2011 - 06:34) EvilDev написал(а):
$('.mytag').attr('border','1px solid #f00');
Спустя 5 минут, 49 секунд (27.09.2011 - 06:39) yuriy написал(а):
Есть такая вот конструкция:
(ффвв) (ввапаав) (ффыфы(ыыв)(фывфыв(фывыфв))) (фывыфв)
Тут всего 4 самых объемлющих тега. Как их всех выделить?
(ффвв) (ввапаав) (ффыфы(ыыв)(фывфыв(фывыфв))) (фывыфв)
Тут всего 4 самых объемлющих тега. Как их всех выделить?
Спустя 1 минута, 52 секунды (27.09.2011 - 06:41) yuriy написал(а):
EvilDev $('.mytag').attr('border','1px solid #f00');
Это ты будешь мух ловить такой хлопушкой.
Это ты будешь мух ловить такой хлопушкой.
Спустя 5 минут, 41 секунда (27.09.2011 - 06:47) Invis1ble написал(а):
yuriy
Цитата |
А как выделить область самого объемлющего тега из одинаковых тегов? |
А что ЭТОо значит?
Каких еще "объемлющих"?
Спустя 1 минута, 5 секунд (27.09.2011 - 06:48) yuriy написал(а):
Да вот то и значит. Смотри пример выше.
Спустя 1 минута, 58 секунд (27.09.2011 - 06:50) EvilDev написал(а):
yuriy
А ты вопрос конкретнее задавай, а не груби
А ты вопрос конкретнее задавай, а не груби
Спустя 1 минута, 12 секунд (27.09.2011 - 06:51) Invis1ble написал(а):
Я увидел, фыв-фыв в скобках
1. Где теги ?
2. Какой из них "самый объемлющий" ?
3. Что за "область"?
4. Чем выделить?

1. Где теги ?
2. Какой из них "самый объемлющий" ?
3. Что за "область"?
4. Чем выделить?
Спустя 11 секунд (27.09.2011 - 06:51) yuriy написал(а):
! |
Invis1ble |
Спустя 1 минута, 6 секунд (27.09.2011 - 06:52) Игорь_Vasinsky написал(а):
тебе как выделять?
preg_replace
теги в круглых скобках чтоли?
выще пример - то мутноватненький
preg_replace
теги в круглых скобках чтоли?
выще пример - то мутноватненький

Спустя 29 секунд (27.09.2011 - 06:53) yuriy написал(а):
() - это границы тегов. Ну, в HTML другие границы тегов, а тут для простоты просто скобки. Вот нужно выделить самый объемлющий.
Спустя 3 минуты, 14 секунд (27.09.2011 - 06:56) yuriy написал(а):
Нет, просто выделить preg_match_all-ом. Да даже и не им, а просто выражение шаблона мне бы.
Спустя 6 минут, 53 секунды (27.09.2011 - 07:03) Invis1ble написал(а):
Спустя 3 минуты, 39 секунд (27.09.2011 - 07:07) yuriy написал(а):
)) Хороший учебник подсунули. Ладно, как найду выражение сообщу, как найти область самого объемлющего тега. На скидку, видать, никто не знает.
Спустя 8 секунд (27.09.2011 - 07:07) Игорь_Vasinsky написал(а):
Invis1ble
ты ещё и злапамятный
ты ещё и злапамятный

Спустя 41 секунда (27.09.2011 - 07:07) Игорь_Vasinsky написал(а):
yuriy
вот он то и знал
просто ты поторопился понтоваться
вот он то и знал


Спустя 2 часа, 2 минуты, 57 секунд (27.09.2011 - 09:10) inpost написал(а):
Адекватно надо спрашивать, а потом адекватно вести себя, тогда и ответ захотят давать ДРУГИЕ люди.
Спустя 23 минуты, 38 секунд (27.09.2011 - 09:34) yuriy написал(а):
Да вот ответ то давать никому, как раз, и не придётся. Ни другим ни мне. Регулярные выражения БЕССИЛЬНЫ перед вложенными или, как ещё говорит, рекуррентными структурами. Так что, ребята, программируйте поиск таких структур вручную.
Спустя 27 минут, 58 секунд (27.09.2011 - 10:02) alex12060 написал(а):
yuriy
Что-то совсем не врубился.
Это типа так?
И здесь самый объемный тэг получился div с id "tag3" ?
Тебе его надо выделить?
Что-то совсем не врубился.
Это типа так?
<div id="tag1"></div>
<div id="tag2"><b></b></div>
<div id="tag3"><div id="tag1"><div id="tag2"><b></b></div></div></div>
<b></b>
И здесь самый объемный тэг получился div с id "tag3" ?
Тебе его надо выделить?
Спустя 5 минут, 9 секунд (27.09.2011 - 10:07) yuriy написал(а):
Совершенно верно. Нужно выделить "tag3", но только с тем условием, что теги то все должны быть безликие. Неотличимые друг от дружки. Регулярные выражения не справляются с такой задачей. Всё равно нужно использовать цикл. В один заход не получится.
Спустя 2 минуты, 8 секунд (27.09.2011 - 10:09) yuriy написал(а):
Я имею в виду, границы тегов у всех тегов одинаковые, как в примере со скобками.
Спустя 3 минуты, 58 секунд (27.09.2011 - 10:13) alex12060 написал(а):
yuriy
Регулярное выражение здесь вполне справится.
Регулярное выражение здесь вполне справится.
Спустя 4 минуты, 48 секунд (27.09.2011 - 10:18) yuriy написал(а):
alex12060 Не будем голословными. Попробуй написать.
Спустя 44 секунды (27.09.2011 - 10:19) yuriy написал(а):
В книжке по регулярным выражениям чётко сказано - не могут.
Спустя 6 минут, 24 секунды (27.09.2011 - 10:25) inpost написал(а):
yuriy
Я тебя не понимаю... ты пришел на форум, зарегистрировался, написал тему И СРАЗУ пишешь всем: "нее, вам с этим не справиться!", какой смысл вообще первых двух действий?
Я тебя не понимаю... ты пришел на форум, зарегистрировался, написал тему И СРАЗУ пишешь всем: "нее, вам с этим не справиться!", какой смысл вообще первых двух действий?
Спустя 4 минуты, 6 секунд (27.09.2011 - 10:29) yuriy написал(а):
inpost
Не лепи горбатого. Я задал вопрос, потом сам же на него и ответил. Ответил, что регулярные выражения в этом случае не справляются. Какие притенении? Или ты из полиции нравов? Может Лжеэксперт? Тут их и так хватает.
Не лепи горбатого. Я задал вопрос, потом сам же на него и ответил. Ответил, что регулярные выражения в этом случае не справляются. Какие притенении? Или ты из полиции нравов? Может Лжеэксперт? Тут их и так хватает.
Спустя 49 минут, 8 секунд (27.09.2011 - 11:18) Игорь_Vasinsky написал(а):
yuriy
Ты что то против ЛжеЭкспертов имеешь? ты судишь по названию группы? Сам какой-то не понятный. Зачем на форум-то зашёл? со стенами надоело разгаваривать?
Ты что то против ЛжеЭкспертов имеешь? ты судишь по названию группы? Сам какой-то не понятный. Зачем на форум-то зашёл? со стенами надоело разгаваривать?
Спустя 26 минут, 27 секунд (27.09.2011 - 11:45) yuriy написал(а):
"Лжеэксперт" я употребил в данном случае буквально и, возможно, к вашей группе это не относится.
Спустя 2 минуты, 16 секунд (27.09.2011 - 11:47) inpost написал(а):
! |
inpost |
Спустя 2 минуты, 57 секунд (27.09.2011 - 11:50) m4a1fox написал(а):
От черт! Все веселье пропустил!
А чел то загоняется!

Спустя 40 минут, 19 секунд (27.09.2011 - 12:30) Winston написал(а):
Если взять пример alex12060 то как-то так получится
Свернутый текст
$str = '<div id="tag1"></div>
<div id="tag2"><b></b></div>
<div id="tag3"><div id="tag1"><div id="tag2"><b></b></div></div></div>
<b></b>';
preg_match_all("#(<([^\s]+).*[^>]*>.*</\\2[^>]*>)#iuU", $str, $match);
$result = max(array_map(create_function('$item', 'global $match; return array(strlen($item), array_search($item, $match[1]));'), $match[1]));
echo 'Max length: ' . $result[0] . '<br/>';
echo 'Line: ' . ($result[1] + 1) . '<br/>';
echo 'String: ' . htmlspecialchars($match[1][$result[1]]) . '<br/>';
_____________
void x;