编程中人名的大写[关闭]

问题描述 投票:0回答:4

有人知道一些关于如何正确大写人名的代码/规则吗?

  • 约翰·史密斯
  • 约翰范伦斯堡
  • 德里克·冯·高
  • 鲁比·德拉富恩特
  • 彼得·麦克劳林
  • 加里·麦克唐纳

(这些可能不正确,只是一些示例名称以及大写字母如何工作)

这似乎是一场失败的战斗......

如果有人对何时以及如何将名字大写有一些代码或规则,请告诉我。

rules capitalization
4个回答
19
投票

在我看来,唯一明智的处理方法是让用户告诉你他们的名字应该如何大写。任何自动方案都会惹恼某人。


7
投票

只要告诉他们你是老派。这使得它变得简单并且 100% 正确:

- JOHN SMITH
- JOHAN VAN RENSBURG
- DERRICK VON GOGH
- RUBY DE LA FUENTE
- PETER MACLAURIN
- GARRY MCDONALD

同样的逻辑也有助于解决许多国际化问题。


2
投票

还有Python 中的实现,它基于此算法。基本思想是将名称转换为标题大小写,然后根据巨大的异常查找表检查名称。

但 Jonathan Leffler 所说的确实是正确的:除非您有转换预先存在的未格式化数据的要求,否则自动大写将会出现错误(特别是因为大写规则因语言鸿沟、文化鸿沟、因语言鸿沟而导致的名称更改而异)移民或人们只是喜欢以某种特定的方式大写自己的名字)。


1
投票

我查找了需要特殊处理的名字。当找到不区分大小写的匹配项时,我使用查找值。这并没有解决使用与“接受的”大写不匹配的大小写的人的问题。它允许我/用户根据需要添加名称。我找不到我的代码,但我确实从 http://www.census.gov/.

获取了姓氏
© www.soinside.com 2019 - 2024. All rights reserved.