繁体   English   中英

如何验证人名? - Python / Django

[英]How to validate person names? - Python/Django

我希望为我的一个表单创建一个全名的验证器。

不幸的是,我不确定最好的方法是,因为它不是那么简单:

if not char in string.letters + " .'":
    raise ValidationError("...")

认为正则表达式会起作用,但是\\w[:alpha:][a-zA-Z]并没有真正捕获特殊字符。

名称示例:

  • 铁斯托

  • MarieJosèphe

  • MarieFrançoise

  • JosédeRibas


有任何想法吗?

圣洁......听起来像是我开了一罐蠕虫! 谢谢你的答案。

别。

请仔细阅读: 虚假程序员相信姓名

我不认为这是个好主意。

你想排除什么样的名字? 没有国际名称允许的字符列表,没有太多理由不允许特定字符。

我个人不会打扰验证名称,我想有很多可能性很难维护。 如果你能想出一个正则表达式,我认为它会如此通用,它不会有效。 我认为唯一有价值的是排除@ # $ % ^类的东西。

只要确保你逃脱角色,如果有人的名字是Fooalert('lala'),那很好,但要确保它没有被解析。

根据你的python版本,你可能需要re.UNICODE吗?

http://docs.python.org/library/re.html#re.UNICODE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM