Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 18, 2009 16:27:42

stasvip
От:
Зарегистрирован: 2009-08-18
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

regexp и русский текст

На windjws этот код работает все есть все красиво когда же переношу на юникс все пропало. Мучаюсь уже довольно долго пробовали с флагами re.U и так далее никакго эффекта отдает только англ. и цыфры в чем может быть проблема?


p = re.compile(r'<.*?>')
descr = p.sub('', var)
descr = re.sub(u"“, ” ", unicode(var, ‘utf-8’))

descr = canonize(descr.encode('utf-8'))
descr = ‘ ’.join(descr)
print descr

title = re.sub(u"“, ” ", unicode(var, ‘utf-8’))
title = canonize(title.encode('utf-8'))
title = ‘ ’.join(title)
print title



Офлайн

#2 Авг. 18, 2009 16:47:31

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

regexp и русский текст

когда же переношу на юникс все пропало
Просто сразу все стало понятно, особенно, что именно не работает.

Отредактировано (Авг. 18, 2009 16:48:06)

Офлайн

#3 Авг. 18, 2009 17:36:20

stasvip
От:
Зарегистрирован: 2009-08-18
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

regexp и русский текст

Проблему решил данная конструкция прекрасно парсила и английский и русский текст на windows , на unix отдавала лищь английский и цыфры.
p = re.compile(r'<.*?>')
descr = p.sub('', var)
pat = re.compile(r'\W+',re.UNICODE)
descr = re.sub(pat, “ ”, unicode(descr,'utf-8'))
descr = canonize(descr.encode('utf-8'))
descr = ‘ ’.join(descr)
print descr

title = re.sub(pat, “ ”, unicode(var,'utf-8'))
title = canonize(title.encode('utf-8'))
title = ‘ ’.join(title)
print title
Вот это работает на unix



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version