Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 2, 2011 19:28:01

vlados
От:
Зарегистрирован: 2011-07-28
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Регулярки

Во общем, нужна правильная регулярка…
Для поиска цифр вот в этом тексте

document.writeln('<a href="ht2" class="" target=_blank onclick="javascript: f36093(this);">Форум документального кино</a>'+''); function f36093(a79263) {a79263.href += "570997&pg=httpoy.su/";}
Нужно найти 570997(находится в самом конце)
Я использовал так, но не вышло…
        q = opener.open('http817')
print q.read()
w = re.findall(r'"(.*?)&pg=', str(q))
print w
Но, что странно вот так работает….
        q = opener.open('http://ссылочка.рф')
print q.read()
w = re.findall(r'"(.*?)&pg=', 'function f36093(a79263) {a79263.href += "570997&pg=htsu/";}')
print w
Помогите разобраться!



Отредактировано (Авг. 2, 2011 19:30:20)

Офлайн

#2 Авг. 2, 2011 19:51:28

vlados
От:
Зарегистрирован: 2011-07-28
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Регулярки

Все разобрался!



Офлайн

#3 Авг. 2, 2011 19:59:36

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Регулярки

У меня работает

re.findall(r'"(\d+)&pg=', doc)
1 в приведенном вами выражении не подразумевается что вы хотите получить цифры :r'"(.*?)&pg='
2 Какая у вас версия питона? В приведенной строке присутствует русский текст, младшие версии питона могут потребовать явного преобразования в unicod



Офлайн

#4 Авг. 2, 2011 20:47:13

vlados
От:
Зарегистрирован: 2011-07-28
Сообщения: 64
Репутация: +  0  -
Профиль   Отправить e-mail  

Регулярки

Нет, я просто взял и заменил все ', как ни странно все заработало…
У меня версия питона 2.х.х



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version