注册密码长度为8~14个字母数字以及标点符号至少包含2种校验

422 阅读1分钟

(一)需求

注册密码要做校验,要求是:

  1. 长度为8~14个字符
  2. 字母数字以及标点符号至少包含2种
  3. 不允许有空格、中文

(二)思路

1、每个条件单独校验

  1. 长度为8~14个字符
str.length
  1. 字母数字以及标点符号至少包含2种
  2. 不允许有空格、中文

2、正则校验

const rules = /(?!^[0-9]+$)(?!^[A-z]+$)(?!^[^A-z0-9]+$)^[^\s\u4e00-\u9fa5]{8,14}$/
if (!rules.test(value)) {
	return Promise.reject('长度为8~14;字母数字以及标点符号至少包含2种;不允许有空格、中文')
}

(三)其他用到的正则

1、手机号

const phone = /^1(3\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\d|9[0-35-9])\d{8}$/
if (!phone.test(this.form.account)) {
  message.warning('手机号格式不正确')
  return
}

2、邮箱

const email = /^\w+(\.)?(\w+)?@[0-9a-z]+(\.[a-z]+){1,3}$/
if (!email.test(this.form.account)) {
  message.warning('邮箱格式不正确')
  return false
}

写在最后的话

学习路上,常常会懈怠

《有想学技术需要监督的同学嘛~》 mp.weixin.qq.com/s/FyuddlwRY…