python string 中查找中文字符串

下面函数是从我在写的一个python自动获取天气的程序中截取的。


该函数将从中文字符串“浙江省杭州市”中,截取出"杭州"


首先将字符串编码为gbk,使用unicode(str,code),将code型编码 的 str字符串转换成unicode

然后判断字符串中是否含有"省"和"市"字,如果有就截取掉;这里注意使用  u“省”

最后返回截取的字符串


def convertName(cityName):
    '''将 “浙江省杭州市” 转换成“杭州”''' 

    name = unicode(cityName, "gbk")
    #name=cityName.encode("utf-8") #测试时,utf-8不行,未解
    print name
    
    if name.find(u"省") !=-1:# 包含'省' 
        #print u'有省'
        name=name.split(u'省')[1]
    if name.find(u"市") != -1:#包含‘市’
        #print u'有市'
        name=name.split(u'市')[0]
    return name


你可能感兴趣的:(Python)