如何使用 Python 从连接的字符串中提取名称?

How can I extract names from a concatenated string using Python?

假设我有一串串联的名称,如下所示: name.s = 'johnwilliamsfrankbrown'.

我如何从这里转到 list 的名字和姓氏 ["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']