Уведомления

Группа в Telegram: @pythonsu

#1 Июль 8, 2013 20:12:36

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

Не жадное регулярное выражение

> это можно сделать, но так как смысла нет, то и не делают

Простите, не понял, что вы написали такое.

Офлайн

#2 Июль 8, 2013 20:30:47

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9874
Репутация: +  854  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

lorien
Простите, не понял, что вы написали такое.
xml - слишком специфичная задача, чтобы полностью реализовывать весь xpath прямо сейчас
html-код модулем xml не разберёшь, а поиск с xpath требуется там, где есть много произвольно меняющихся данных, быстро меняющихся структур документов

lorien
Я бы пользовался.
он сторонний, его нужно доустанавливать



Отредактировано py.user.next (Июль 8, 2013 20:32:12)

Офлайн

#3 Июль 9, 2013 07:08:26

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

inzem
Почему первое .*? срабатывает как жадное?
In : re.search(r'<.*?categ.*?>',

нормальное поведение, у Фридла всё расписано

сначала ищется lt, затем захватываются любые символы(в том числе lt) до categ, потом любые до gt.

Офлайн

#4 Июль 9, 2013 08:28:28

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

Не жадное регулярное выражение

> не, я имел в виду модуль xml, что он не подходит для разбора html-кода, потому что выпадает, когда встречает незакрытый тег если бы он подходил, никто бы не пользовался сторонним lxml

Ещё раз пишу, что слово “никто” здесь не уместно так как, как минимум, я продолжал бы пользоваться lxml т.к. он предоставляет поддержку xpath. Вот и всё, что я хотел сказать.

Офлайн

#5 Июль 9, 2013 10:43:18

inzem
От:
Зарегистрирован: 2010-07-18
Сообщения: 39
Репутация: +  0  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

bismigalis
re.search(r'<.*categ.*?>' вот так должно быть захватываться все в том числе lt



Офлайн

#6 Июль 9, 2013 10:53:00

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

inzem
вот так должно
в твоих фантазиях

Офлайн

#7 Июль 9, 2013 12:18:21

inzem
От:
Зарегистрирован: 2010-07-18
Сообщения: 39
Репутация: +  0  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

Офлайн

#8 Июль 9, 2013 12:51:45

bismigalis
Зарегистрирован: 2010-10-02
Сообщения: 449
Репутация: +  47  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

'<.*?>'
захват любых символов прекратится при встрече ‘>’
'<.*?categ.*?>'
захват любых символов прекратится при встрече ‘categ’

тебе надо было написать
'<[^<]*?categ.*?>'

Отредактировано bismigalis (Июль 9, 2013 15:00:12)

Офлайн

#9 Июль 9, 2013 13:08:39

inzem
От:
Зарегистрирован: 2010-07-18
Сообщения: 39
Репутация: +  0  -
Профиль   Отправить e-mail  

Не жадное регулярное выражение

bismigalis
ок, спасибо



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version