2024年11月5日 LiuJinTao

鸿蒙中正则的使用

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、正则规则说明

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

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐