您建议处理或清理用户名的最佳做法是什么? 在法国,西班牙,希腊,......甚至限制拉丁字母,你会得到句号,破折号,撇号,......
我们正在做的是从Facebook api获取信息。如果用户设置了用户名,我们就会获得用户名,否则我们会将名称转换为用户名(例如,稍后登录)。 我们得到的东西包括Clément,D'Aquinne,John M. March,Anne-Sophie Blass,......你知道演习。
你是如何处理的?
答案 0 :(得分:4)
用户名中的完全unicode支持。
如果您担心使用unicode字符进行模拟,您可以在名称旁边显示自动生成的视觉线索(非常类似于此处的新用户帐户,但不会被用户图标替换)。
如果仍需要缩减到ASCII范围,则可以使用标准工具进行Unicode文本规范化。它们基于各种unicode等价原则工作:http://en.wikipedia.org/wiki/Unicode_equivalence
可能值得考虑接受unicode范围内的字符,对于那些使用变音符号表示自己但不接受任何与现有字符具有相同规范化形式的用户帐户的人。即您可以设置/ user /clément,这将禁止创建/ user / clement和/ user /clëment。