我在Django上与来自荷兰的用户建立了社交网络。 通过我的站点,我可以获得荷兰名称,例如,Jap van der Stael,我只需要获得van der部分。对于这个名字,这不是一个问题,但是如何从一个像Jap van der Vulpen-Odijk这样的名字中得到中缀呢
现在我有下一个代码:
last_name_1 = 'van der Vulpen'
last_name_2 = 'van der Vulpen - Odijk'
' '.join(last_name_1.split()[:-1] -> 'van der'
' '.join(last_name_2.split()[:-1] -> 'van der Vulpen -'
如何为姓氏返回清除前缀\u 2
一些可能的名称示例:
nijveldt - affourtit -> ''
van Eldik -> 'van'
deHart -> 'de'
NIEUWBURG -> ''
Heuvel van den -> 'van den'
van deven -. 'van'
Koerten - de Jong -> 'de'
vanBARNEVELD -> 'van'
我的理解是,在荷兰,这些中间部分总是小写的。因此,这应该是可行的:
这个解决方案的好处是“-”不算作小写,所以它也被过滤掉了。但是,如果名称的“适当”部分不是大写,那么我们就有问题了。要解决这个问题,我们必须将字符串整体考虑如下:
但是,此函数仍然假定您有名字和姓氏。你可以考虑的另一件事是找到有效的前缀值并将其拉出来:
相关问题 更多 >
编程相关推荐