JS:如何验证手机号格式和邮箱格式?(正则)

进入我的主页,查看更多JS的分享!

我的代码有多短,本篇内容就有多短!

1. 手机号输入

/**
 * 验证输入:手机号
 */
function verPhone(p, required = true) {
  if (!p) {
    return required ? false: true;
  } else {
    // 必须是1开头,第二位数字可以是0-9任意一个,总长为11
    let reg = /^1([0-9])\d{9}$/;
    // 必须是1开头,第二位数字可以是3|5|6|7|8|9任意一个,总长为11
    // let reg = /^1([3|5|6|7|8|9])\d{9}$/;
    if (reg.test(p)) {
      return true;
    } else {
      return false;
    }
  }
}

2. 邮箱输入

/**
 * 验证输入:邮箱
 */
function verMail(m, required = true) {
  if (!m) {
    return required ? false: true;
  } else {
    // 允许存在大小写字母
    // let reg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
    // 允许存在小写字母
    let reg = /^([a-z0-9]+[_|\_|\.]?)*[a-z0-9]+@([a-z0-9]+[_|\_|\.]?)*[a-z0-9]+\.[a-z]{2,3}$/;
    if (reg.test(m)) {
      return true;
    } else {
      return false;
    }
  }
}

测试:

console.log(verMail("1433223.com"));
//输出:false
console.log(verMail("1433223@p"));
//输出:false
console.log(verMail("[email protected]"));
//输出:true
console.log(verMail("@p.com"));
//输出:false
console.log(verMail("[email protected]"));
//输出:true
console.log(verMail("[email protected]"));
//输出:false
console.log(verMail("[email protected]"));
//输出:false
console.log(verMail("[email protected]"));
//输出:false
console.log(verMail("[email protected]"));
//输出:false

关于邮箱的正则表达式,网上有很多,可以对比下校验的规则。

3. 中文输入

/**
 * 验证输入:中文,包括字符
 */
function verChinese(str, required = true) {
  if (!str) {
    return required ? false: true;
  } else {
    let reg = /^[\u0391-\uFFE5]+$/;
    if (reg.test(str)) {
      return true;
    } else {
      return false;
    }
  }
}

4. 英文输入

/**
 * 验证输入:英文,只验证字母
 */
function verAz(str, required = true) {
  if (!str) {
    return required ? false: true;
  } else {
    let reg = /^[a-zA-Z]*$/;
    if (reg.test(str)) {
      return true;
    } else {
      return false;
    }
  }
}

 5. 数字输入

/**
 * 验证输入:数字
 * 排除小数点
 */
function verInt(num, required = true) {
  if (!num) {
    return required ? false: true;
  } else {
    let reg = /^[0-9]+$/;
    if (reg.test(num)) {
      return true;
    } else {
      return false;
    }
  }
}

6. 数组或字母输入
 

/**
 * 验证输入:数字或字母
 */
function verAzOrInt(str, required = true) {
  if (!str) {
    return required ? false: true;
  } else {
    var reg = /^[0-9a-zA-Z]*$/;
    if (reg.test(str)) {
      return true;
    } else {
      return false;
    }
  }
}

 7.密码输入

这篇博客园:https://www.cnblogs.com/cexm/p/7737538.html

如果有补充,请在评论区留言。

你可能感兴趣的:(Web)