Найти - Пользователи
Полная версия: вылавливать русский текст с помощью регулярных выражений
Начало » Python для новичков » вылавливать русский текст с помощью регулярных выражений
1
esal
ТЕКСТ:
</div></td><td><span class=“b-yauser”><a href="http://kseniya-smetaneva.ru/“><b>в</b>аша стэлла</a></span></td><td><em>пока !!!!!!!!!!!!!!!!!!!!!!!!!<wbr>!!!!!!!!!!!</em></td><td style=”white-space: nowrap;“>11&nbsp;января</td><td><i class=”b-gender-n“></i></td></tr>

Мой код:
nickre = re.compile('<b>(.)</b>(.*?)</a>') #врезультате должно получится вот так('в', ‘аша стэлла’), но в результате работает только с англ буквами

try:
request = urllib2.Request(url)
request.add_header(”User-Agent“, ”Crawler")
opener = urllib2.build_opener()
msg = opener.open(request).read()
except:
return

nicklist = nickre.findall(msg)
if len(nicklist) > 0:
nick = …


Мне нужно с помощью регулярки выловить текст в <b>в</b>аша стэлла</a> и сохранить его в переменную nick, но для русских имен не получается.
o7412369815963
переведи все в уникод (текст и регулярку) и добавь флаг re.UNICODE (re.U)
esal
регулярку поменял
mutualregex = re.compile(ur'<span class=“b-yauser”><a\shref=“(.*?)”>', re.UNICODE)

часть функции:
dmsg = msg.decode('utf-8')
nicklist = nick.findall(dmsg)
print nicklist

получаю в результате:

[(u'\u0420', u'\u0430\u043f\u0443\u043d\u0446\u0435\u043b\u044c')
(u'\u0413', u'\u0430\u0440\u0440\u0438 \u0414\u0436\u0435\u0439\u043c\u0441 \u041f\u043e\u0442\u0442\u0435\u0440')
(u'\u0413', u'\u0435\u0440\u043c\u0438-\u0411\u043b\u0443\u043c')
(u'\u0440', u'\u0438\u0442\u0430 \u0444\u0438\u043b\u0438\u043f\u043f\u043e\u0432\u0430')
(u'F', u'rywind')]

Плиз как перевести это на русский?
doza_and
А это и есть русский
print u'\u0430\u043f\u0443\u043d\u0446\u0435\u043b\u044c'
апунцель
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB