Немного не понимаю почему выдается такой индекс найденного фрагмента (1 : 21), причем строку берет правильно :
my.txt -utf8 кодировка
f=open('my.txt','r')
dict=f.read()
f.close()
print dict[0:50]
begin=0
end=0
begin=dict.find('{',end)+1
end=dict.find('}',begin)
print dict[begin:end],'|\t',begin,':',end
{регулярный}{выражение}{вик
регулярный | 1 : 21