本页面已经被访问 20135 次。
说明:

在互联网+时代,很多面向公众服务的信息系统包括网站、APP都需要对姓名进行实名制认证,在浏览器端用js对姓名做简单的合法性检查是广泛使用的一种方法。 然而,目前很多信息系统用于姓名合法性检查的js代码存在严重的Bug,会将实际在用的姓名生僻汉字认定为非法,导致用户无法注册账号。本页面演示对生僻字姓名友好的合法性检查功能。 本功能将符合下列条件的姓名认为是合法的:

  • 字符范围:全部汉字 + 姓名间隔符·(中圆点)。
  • 汉字包括:Unicode 基本集 + 扩展集 A/B/C/D/E/F/G + 公安人口信息自造字。

注意,本页面的功能仅用于演示前端通过js对姓名用字的范围做初步检查,业务系统可参考本页面功能进一步定制,可能的定制内容包括:

  • 后台对姓名进行实名制核验进一步判断姓名真实性。
  • 修改 js 代码,放宽汉字范围,以适应未来Unicode可能新增加的汉字,以避免因未来Unicode版本升级导致需要修改代码。
  • 修改 js 代码,收紧汉字范围,与Unicode各个区块的范围严格一致,以避免可能存在的潜在安全问题。但应考虑未来随着Unicode版本的升级修改这段代码。
示例:
  1. Unicode正式码: 刘䶮𬱖劉䶮頔刘𮧵𬎆劉𮧵𬎆劉𮧵𰞔
  2. 人口信息PUA码: 刘劉刘劉劉
  3. 备注:为了区分PUA码和正式码,本平台刻意将PUA码的字形压扁了一些,用户不必理会该差异。
编码:
  

注意:

  1. 搜狗自造字使用的编码既不是Unicode正式码,也不同于公安人口信息PUA码,强烈建议用户不要使用。搜狗自造字的辨识方法请参考搜狗自造字, 以及搜狗自造字为什么用非标准码,造了哪些字在哪里能查出来?
  2. 下方所列字符仅用于辅助录入,之所以保留部分繁体字是因为这些字已经实际在用,如果库里用了繁体字,拿简体字去核验,当然没法通过。
  3. 请说普通话,请写规范字。
辅助输入:
检测结果: