如何在python

时间:2015-07-28 00:59:11

标签: python regex python-2.7 unicode

我正在使用python在字符串中搜索一些简单的西里尔语模式。我使用的模式类似于/[а-я]+/[а-я]+。当我通过此代码搜索模式时

import re
re.search('/[а-я]+/[а-я]+', '/бцршб/бйцбйц')

找不到任何东西。但是当我这样写的时候。

import re
re.search(u'/[а-я]+/[а-я]+', u'/бцршб/бйцбйц')

有效。但是在我的情况下,模式和文本是在数据库中预定义的,所以我找不到将它们转换为Unicode字符串的方法。在这种情况下,解决方案是什么?任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:1)

谢谢你们。它在解码字符串时有效。所以代码就像:

import re 
pattern = '/[а-я]+/[а-я]+'.decode('utf-8') 
text = '/йцбйц/бйцбц'.decode('utf-8') 
re.search(pattern, text)