有学有练才叫学习:学而不思则罔,思而不学则殆:学而不习,纸上谈兵,习而不进,画地为牢!

验证邮箱的正则表达式(JS表单验证手机号、邮箱的输入,用正则表达式直接搞定)

javascript 炮渣日记 3周前 (11-18) 13次浏览 已收录 0个评论 扫描二维码

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("0123@p.com"));
//输出:true
console.log(verMail("@p.com"));
//输出:false
console.log(verMail("p@p.com"));
//输出:true
console.log(verMail("P@p.com"));
//输出:false
console.log(verMail("p@P.com"));
//输出:false
console.log(verMail("P@egm.com"));
//输出:false
console.log(verMail("-@egm.com"));
//输出: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;
    }
  }
}
喜欢 (0)
炮渣日记
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址