Python 正则表达式之中文匹配

      程序语言 2007-6-8 22:45:00

        python 的re模块(即正则表达式模块)默认似乎是用Unicode处理,因此,如果目标文件的编码为GBK(gb2312或cp936,如双狐图形数据的格式)则其匹配结果为空。即下列的语句将得不到任何匹配结果。

        line=inputFile.readline()
        re.search(r'^Layer\sM\s'+'中文匹配词',line):

因此,需要对中文匹配词进行编码转换,即改写上面的语句为:

        keyword=(u'中文匹配词').encode('cp936')

        re.search(r'^Layer\sM\s'+keyword,line):

标签集:TAGS:python 正则表达式
回复Comments() 点击Count()
喜欢就顶一下

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}