当前位置: 首页 > article >正文

华为 HarmonyOS NEXT 原生应用开发:【封装正则API】在原生鸿蒙中使用正则表达式校验登录注册模块(邮箱、密码、手机号)校验

2024年11月5日 LiuJinTao

文章目录

  • 鸿蒙中正则的使用
    • 1、封装API代码示例
    • 2、正则规则说明

鸿蒙中正则的使用

1、封装API代码示例

用户名为邮箱校验, 密码就是密码校验 ,以下是一个简单的登录代码示例

● 这里封装成了一个 正则API 工具
/**
 * 手机号和密码的正则表达式 API
 * @param input : 用户输入的手机号或者密码或者用户名
 * @param type  : 调用者需要明确传入的是手机号 还是 密码 校验
 */

export function ValidateInputHandle(input: string, type: "phone" | "password" | "username"): boolean {
  switch(type) {
    case "phone":
      const phoneRegex = /^1[3-9]\d{9}$/
      return phoneRegex.test(input)
    case "password":
      const passwordRegex = /^(?=.*\d)(?=.*[a-zA-Z])[a-zA-Z\d]{6,20}$/
      return passwordRegex.test(input)
    case "username": 
      const usernameRegex = /^(?=.*[@#!])[a-zA-Z0-9_-@#!]{8,20}$/
      return usernameRegex.test(input)
    default :
      throw new Error("传入的参数有误!")
  }
}
  • 调用

 // 调用正则校验
 let result: boolean = ValidateInputHandle(this.phone, "phone")  // this.phone 需要获取传入
 let result: boolean = ValidateInputHandle(this.password, "password")
 let result: boolean = ValidateInputHandle(this.username, "username")

2、正则规则说明

  • 手机号说明
    在这里插入图片描述
  • 密码说明
    在这里插入图片描述

http://www.kler.cn/a/382075.html

相关文章:

  • SQL常见语法
  • Hunyuan-Large:推动AI技术进步的下一代语言模型
  • 超萌!HTMLCSS:超萌卡通熊猫头
  • AAA 数据库事务隔离级别及死锁
  • #渗透测试#SRC漏洞挖掘# 操作系统-windows系统bat病毒
  • DolphinScheduler告警通知
  • 微积分复习笔记 Calculus Volume 1 - 4.7 Applied Optimization Problems
  • WordPress 中最佳的维护服务:入门级用户指南
  • 【机器学习导引】ch4-决策树
  • copyq禁止访问网络(ubuntu cgroup)
  • 发不了Science?那是因为你不会画Science风格的配图
  • 静态数据区,堆,栈
  • linux动态库与静态库
  • 从底层技术到实际应用:Claude与ChatGPT谁更适合学术写作?
  • Redis学习:BitMap/HyperLogLog/GEO案例 、布隆过滤器BloomFilter、缓存预热+缓存雪崩+缓存击穿+缓存穿透
  • 20241106,LeetCode 每日一题,用 Go 实现整数回文数判断
  • Redis(2):内存模型
  • java:题目:用Java实现简单的自取取款操作
  • Leetcode 第 422 场周赛题解
  • Flutter中有趣的级联语法
  • 蓝桥杯真题——三角回文数(C语言)
  • PCL 点云配准 精度评价指标均方根误差(RMSE)
  • ASP .NET CORE 6 在项目中集成WatchDog开源项目
  • 社区养老服务小程序ssm+论文源码调试讲解
  • Mac M1 Docker创建Rocketmq集群并接入Springboot项目
  • 《Keras3 深度学习初探:开启Keras3 深度学习之旅》