Задача - поиск в файлах с русским текстом в кодировке cp1251.
Не получается искать интервалы, составленные кириллицей.
Кто сталкивался, подскажите, как исправить функцию или выражение:
#!/usr/local/bin/python
# -*- coding: utf-8
import re
import codecs
def grab_ru(files=[]):
found=[]
if files !=None:
txtsrch=re.compile(r"фы")# такое выражение находит,
## txtsrch=re.compile(r"[фы]")# а такое НЕ находит,
for file in files:
for line in open(file, 'r'):
## без перекодировки тоже не работает с русским
line=codecs.getdecoder('cp1251')(line)[0]
line=codecs.getencoder('utf8')(line)[0]
found.extend(mailsrch.findall(line))
u={}
for item in found:
u[item] =1
return u.keys()
print grab_ru(files=['ru.txt'])
Спасибо