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

2024年11月5日 LiuJinTao

文章目录

鸿蒙中正则的使用

1、封装API代码示例

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

ts 复制代码
● 这里封装成了一个 正则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("传入的参数有误!")
  }
}
  • 调用
ts 复制代码
 // 调用正则校验
 let result: boolean = ValidateInputHandle(this.phone, "phone")  // this.phone 需要获取传入
 let result: boolean = ValidateInputHandle(this.password, "password")
 let result: boolean = ValidateInputHandle(this.username, "username")

2、正则规则说明

  • 手机号说明
  • 密码说明
相关推荐
网络豆19 小时前
开源鸿蒙平台 CMP 三方库「navigation-compose-extended」适配全流程
华为·开源·harmonyos
2601_9494800620 小时前
开源鸿蒙平台 CMP 三方库「multiplatform-markdown-renderer」适配全流程
华为·开源·harmonyos
网络豆1 天前
开源鸿蒙平台 CMP 三方库「tanstack-table-kmp」适配全流程
华为·开源·harmonyos
万物智能信息科技1 天前
六轴传感器Motion驱动框架开发—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
驱动开发·华为·开源·harmonyos·鸿蒙
熊猫钓鱼>_>1 天前
端侧 NPU 轻量大模型推理接入笔记【鸿蒙心迹】
开发语言·笔记·华为·ai编程·harmonyos·鸿蒙
2601_949847751 天前
开源鸿蒙平台 CMP 三方库「compose-remember-setting」适配全流程
华为·开源·harmonyos
resh_people1 天前
开源鸿蒙平台 CMP 三方库「snowfall-compose」适配全流程
华为·开源·harmonyos
2501_944525541 天前
开源鸿蒙平台 KMP 三方库「KSafe」适配全流程
华为·开源·harmonyos
熊猫钓鱼>_>1 天前
CMP for OpenHarmony 实战:Coil 图片加载库鸿蒙化使用心得
运维·服务器·开发语言·华为·ai编程·harmonyos·openharmony
小雨青年1 天前
【HarmonyOS 7 小艺 Skill 开发实战】 01 创建第一个会后行动助手
华为·harmonyos