如何使用Python从连接的字符串中提取名称?
假设我有一个串连的名称字符串,如下所示:如何使用Python从连接的字符串中提取名称?,python,list,names,Python,List,Names,假设我有一个串连的名称字符串,如下所示: name.s='johnwilliamsfrankbrown' 如何从这里进入姓名和姓氏的列表[“约翰”、“威廉姆斯”、“弗兰克”、“布朗”] 到目前为止,我只找到了从非连接字符串中提取单词的代码片段。正如timgeb在评论中所指出的,只有在您已经知道所需名称的情况下,这才是可能的。假设您有这些信息,您可以这样提取它们: >>> import re >>> names = ['john', 'frank', 'brow
name.s='johnwilliamsfrankbrown'
如何从这里进入姓名和姓氏的列表[“约翰”、“威廉姆斯”、“弗兰克”、“布朗”]
到目前为止,我只找到了从非连接字符串中提取单词的代码片段。正如timgeb在评论中所指出的,只有在您已经知道所需名称的情况下,这才是可能的。假设您有这些信息,您可以这样提取它们:
>>> import re
>>> names = ['john', 'frank', 'brown', 'williams']
>>> regex = '(' + '|'.join(names) + ')'
>>> separated_names = re.findall(regex, 'johnwilliamsfrankbrown')
>>> separated_names
['john', 'williams', 'frank', 'brown']
正如timgeb在评论中所指出的那样,只有在您已经知道希望使用哪些名称的情况下,才有可能这样做。假设您有这些信息,您可以这样提取它们:
>>> import re
>>> names = ['john', 'frank', 'brown', 'williams']
>>> regex = '(' + '|'.join(names) + ')'
>>> separated_names = re.findall(regex, 'johnwilliamsfrankbrown')
>>> separated_names
['john', 'williams', 'frank', 'brown']
如果不知道你想要的是哪一个姓氏,这是不可能的。例如,“Will”、“Williams”、“Liam”都在里面。@timegb您可能可以使用Amazon的Mechanick Turk API的Python库。人类可以很容易地挑出名字,但不知何故,我怀疑这是询问者想要的。如果不知道你想要的是哪个名字和姓氏,这是不可能的。例如,“Will”、“Williams”、“Liam”都在里面。@timegb您可能可以使用Amazon的Mechanick Turk API的Python库。人类可以很容易地挑出名字,但不知何故,我怀疑这是询问者所寻找的。