正则验证姓名否中文(包含生僻字)

简介: 正则验证姓名否中文(包含生僻字)

1.常见的中文 \u4e00-\u9fbb 和 \u4e00-\u9fa5 (不包含生僻字)


2.比较广泛的中文汉字。(包含了咱们需要的生僻字 和 不需要的很多字符 比如 中文句号分号逗号、书名号 等等) \u2E80-\uFE4F


3.CJK标点符号
范围:\u3000-\u303F
参考地址:http://www.unicode.org/charts/PDF/U3000.pdf


根据以上三点,我们要用第二个再排除第三个,所以判断是否包含生僻字的中文姓名的正则表达式如下所示:


/^((?![\u3000-\u303F])[\u2E80-\uFE4F]|\·)(?![\u3000-\u303F])\u2E80-\uFE4F$/.test(name)

/^([\u2E80-\uFE4F]{2,6})$/gi.test('䶮一亿')

校验姓名


// 将传入的姓名中空格和全角空格都去掉,乱七八糟的·都换成半角的·
export const checkChineseName = function(name) {
      let reg = /^[\u4e00-\u9fa5]{2,15}$/;
      // 保留点后,用来校验的姓名,也是最终校验通过后返回的姓名
      let payerName = name.replaceAll(" ", "")
                        .replaceAll(" ", "")
                        .replaceAll("•", "·")
                        .replaceAll(".", "·");
      // 去除所有点后,用来校验的姓名
      let checkName = name.replaceAll(" ", "")
                        .replaceAll(" ", "")
                        .replaceAll("•", "")
                        .replaceAll(".", "")
                        .replaceAll("·", "");
      if(checkName.length === 1){
        message.error("姓名至少包含两位汉字,请修正");
        return false;
      }
      if (reg.test(checkName)) {
        if(payerName.substring(0,1) === '·'){
            message.error("姓名第一位不能为【·】,请修正");
            return false;
        }
        if(payerName.substring(payerName.length - 1) === '·'){
            message.error("姓名最后不能为【·】,请修正");
            return false;
        }
        if(payerName.indexOf("··") !== -1){
            message.error("姓名不能有连续的【·】,请修正");
            return false;
        }
        return payerName;
      } else {
        message.error("姓名中只能包含【汉字】和【·】,请修正");
        return false;
      }
}
相关文章
|
JavaScript
vant/vue——在van-tab中写入内容使其中间部分进行滚动
在van-tab中写入内容使其中间部分进行滚动
910 0
|
JSON 前端开发 JavaScript
优雅!Spring Boot 3.3 实现职责链模式,轻松应对电商订单流程
本文介绍如何使用 Spring Boot 3.3 实现职责链模式,优化电商订单处理流程。通过将订单处理的各个环节(如库存校验、优惠券核验、支付处理等)封装为独立的处理器,并通过职责链将这些处理器串联起来,实现了代码的解耦和灵活扩展。具体实现包括订单请求类 `OrderRequest`、抽象处理器类 `OrderHandler`、具体处理器实现(如 `OrderValidationHandler`、`VerifyCouponHandler` 等)、以及初始化职责链的配置类 `OrderChainConfig`。
|
8月前
|
安全 物联网 API
Windows 11 23H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 7 月更新)
Windows 11 23H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 7 月更新)
679 0
Windows 11 23H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 7 月更新)
|
9月前
|
JSON 算法 安全
harmony-utils之SM3,SM3工具类
harmony-utils是一款HarmonyOS工具库,提供丰富的SM3加密工具类,支持摘要、分段处理及消息认证码计算,助力开发者高效构建安全应用。
394 0
正则验证姓名否中文(包含生僻字)
1.常见的中文 \u4e00-\u9fbb 和 \u4e00-\u9fa5 (不包含生僻字) 2.比较广泛的中文汉字。(包含了咱们需要的生僻字 和 不需要的很多字符 比如 中文句号分号逗号、书名号 等等) \u2E80-\uFE4F 3.CJK标点符号
2535 0
|
负载均衡 算法 容灾
slb基础概念
【9月更文挑战第2天】
4410 25
|
安全 Java API
Java根据URL获取文件内容的实现方法
此示例展示了如何安全、有效地根据URL获取文件内容。它不仅展现了处理网络资源的基本技巧,还体现了良好的异常处理实践。在实际开发中,根据项目需求,你可能还需要添加额外的功能,如设置连接超时、处理HTTP响应码等。
1153 4

热门文章

最新文章