当姓氏也用逗号分隔时,用逗号分隔名称

时间:2011-03-24 18:45:38

标签: python list split

我有以下数据库字段: AUX:Smith,J.,Jones,M。&福特,S。 名称可以从1到15之间,其他名称用逗号分隔,最后一个用&

分隔

如何将其拆分为列表,其中list [1] = Smith,J,list [2] = Jones,M。等等?

1 个答案:

答案 0 :(得分:3)

def parseNames(namestr):
    namestr   = namestr.replace('&', ',')
    nameparts = [namepart.strip() for namepart in namestr.split(',')]
    it = iter(nameparts)
    return zip(it,it)    # return list of part-pairs

def nameStr(name, fmt="{lastname}, {firstname}"):
    return fmt.format(lastname=name[0], firstname=name[1])

names = [nameStr(name) for name in parseNames("Smith, J., Jones, M. & Ford, S")]

给你

['Smith, J.', 'Jones, M.', 'Ford, S']