首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将英文名字划分为姓和名的最佳策略

将英文名字划分为姓和名的最佳策略
EN

Stack Overflow用户
提问于 2012-11-03 14:05:07
回答 4查看 2.4K关注 0票数 6

我有一个名单的名字,我需要把他们分成名字和姓氏。因为有些名字中有2-3个空格,所以一个空格的简单分割是行不通的。

人们使用什么样的启发式来执行拆分?

请注意,这不是一个重复的问题,有效地问如何分裂在一个空间;我在寻找启发式和算法,而不是实际的代码帮助。

更新:我把问题集限制在英式名称上。这是我需要解决的所有问题,很可能是所有接近这个(英语)问题的人都需要的。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-11-03 14:19:20

我读过一篇关于这个主题的非常有趣和全面的文章:

http://www.w3.org/International/questions/qa-personal-names

它甚至建议你问问自己,你是否真的需要对名字和姓氏分开的字段。它似乎取决于应用程序的目标区域。

票数 6
EN

Stack Overflow用户

发布于 2012-11-03 14:24:22

虽然没有完全解决这个问题,但有两种方法是有帮助的。

  1. 通过编程将容易的分离出来,那些不容易的被推入另一个列表,“仍然要被分割”。手动排序那个列表。当您手动排序时,可能会出现一些可以编码的启发式方法,从而进一步缩小其余列表的大小。如果这是一次性的事情,而且列表不是超级大的,这将完成任务。
  2. 一个密切相关的问题是,当名称被拆分时,您不知道哪个是第一个,哪个是最后一个。一些系统通过进行模糊查找来解决这个问题,如果在第一次尝试中没有找到匹配项,请翻转名字和姓氏,然后再试一次。你没说你为什么要把名字分开。如果是对参考数据进行查找,请考虑某种类似的模糊查找启发式方法,它允许尝试不同的拆分,而不是预先得到分割的正确。

不是一个真正的答案,但在这种情况下,真的没有完美的答案。

票数 3
EN

Stack Overflow用户

发布于 2012-11-03 14:08:06

不同的国家和地区有不同的名称格式。例如,亚洲的姓氏通常是先命名后再命名的。在西方,你有名字和姓的约定,但是当人们用双桶或者中间的名字时,会变得很复杂。然后一些地区的人只被赋予一个名字。

就我个人而言,恐怕没有一种算法能给你100%的精确结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13209894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档