JS正则表达式验证账号、手机号、电话和邮箱是否合法

下面我将介绍使用JavaScript正则表达式来验证账号、手机号、电话和邮箱是否合法的方法。

验证账号

账号的验证规则是由字母、数字、下划线组成的,长度为4-16位。我们可以使用正则表达式来进行验证。具体代码如下:

function validateUsername(username) {
  var pattern = /^[a-zA-Z0-9_]{4,16}$/;
  return pattern.test(username);
}

说明:/^表示匹配字符串的开始,$/表示匹配字符串的结束,[a-zA-Z0-9_]表示字母、数字、下划线的一个字符,{4,16}表示字符的长度范围为4-16。

验证手机号

手机号的验证规则是11位数字,且以13/14/15/17/18开头。我们可以使用正则表达式来进行验证。具体代码如下:

function validateMobilePhone(phone) {
  var pattern = /^1[3456789]\d{9}$/;
  return pattern.test(phone);
}

说明:^1表示以1开头,[3456789]表示第二位是3、4、5、6、7、8、9中的一个数字,\d表示数字,{9}表示后面的数字为9位。

验证电话

电话的验证规则是3-4位区号,7-8位电话号码,中间用“-”连接。我们可以使用正则表达式来进行验证。具体代码如下:

function validateTelephone(telephone) {
  var pattern = /^0\d{2,3}-?\d{7,8}$/;
  return pattern.test(telephone);
}

说明:^0表示以0开头,\d{2,3}表示后面的数字为2到3位,-?表示“-”可选,\d{7,8}表示后面的数字为7到8位。

验证邮箱

邮箱的验证规则是由字母、数字、下划线、点和@组成的,在@符号前面的可以是字母、数字、下划线、点和加号,后面的可以是字母、数字、下划线、点和连接线。我们可以使用正则表达式来进行验证。具体代码如下:

function validateEmail(email) {
  var pattern = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
  return pattern.test(email);
}

说明:\w表示字母、数字、下划线的一个字符,[-+.]\w+表示连接线、加号、点后面跟着多个字母、数字、下划线的字符,\.\w+表示点后面跟着多个字母、数字、下划线的字符,([-.]\w+)*表示连接线、点后面跟着多个字母、数字、下划线的字符可选。

示例1:

console.log(validateUsername('fafa4f')); // true
console.log(validateMobilePhone('15555555555')); // true
console.log(validateTelephone('010-88888888')); // true
console.log(validateEmail('test@test.com')); // true

示例2:

console.log(validateUsername('a^bcdefg1')); // false,账号中包含非法字符^
console.log(validateMobilePhone('12222222222')); // false,手机号码格式不正确
console.log(validateTelephone('010-8888888')); // false,电话号码位数不对
console.log(validateEmail('test@test')); // false,邮箱格式不正确

希望以上内容可以帮助你理解JavaScript正则表达式的匹配规则。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS正则表达式验证账号、手机号、电话和邮箱是否合法 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 利用Js的console对象,在控制台打印调式信息测试Js的实现

    利用Js的console对象,在控制台打印调试信息是Web开发中非常常见的一种调试方式。下面是一些步骤: 1. 开启浏览器的开发者工具 首先,我们需要在浏览器中打开一个网站,然后按下键盘上的F12键,或者通过右键打开菜单选择“检查”选项来打开浏览器的开发者工具。 2. 在Js代码中添加console调试信息 为了方便调试,我们在Js代码中添加console输…

    JavaScript 2023年5月28日
    00
  • 日期 时间js控件

    下面我来详细讲解“日期时间JS控件”的完整攻略。 什么是日期时间JS控件 日期时间JS控件,也称为日期选择器、时间选择器,是一种用于在网页中选择日期和时间的工具。它通常是由JS代码和CSS样式组成,可以根据需求定制外观和交互方式。 常见的日期时间控件有DatePicker、DateTimePicker、TimePicker等。 如何使用日期时间JS控件 使用…

    JavaScript 2023年5月27日
    00
  • JavaScript创建类/对象的几种方式概述及实例

    下面是详细讲解“JavaScript创建类/对象的几种方式概述及实例”的攻略: 1. 创建类的几种方式 1.1 构造函数创建 通过构造函数创建类是最常见的方式,它使用函数来定义类,并在实例化时通过关键字 new 来调用该函数。以下是一个示例: function Person(name, age) { this.name = name; this.age = …

    JavaScript 2023年5月27日
    00
  • JavaScript仿京东实现秒杀倒计时案例详解

    下面是关于“JavaScript仿京东实现秒杀倒计时案例详解”的完整攻略。 1. 准备工作 在开始仿京东实现秒杀倒计时案例之前,我们需要做一些准备工作。具体如下: 在HTML文件中引入所需的CSS文件和JavaScript文件; 创建一个用于显示倒计时的HTML标签,并设置其id属性; 在JavaScript文件中获取该HTML标签的id属性值,利用docu…

    JavaScript 2023年6月11日
    00
  • vue升级之路之vue-router的使用教程

    在Vue.js开发项目中,Vue Router是一个不可或缺的库。它为我们提供了一种方便的方式来管理应用程序的的路由和控制页面的显示内容。本文将提供“Vue升级之路之Vue Router的使用教程”,供大家参考。 安装Vue Router 我们可以使用npm来安装Vue Router,使用以下命令: npm install vue-router 创建Vue …

    JavaScript 2023年6月11日
    00
  • JS正则表达式字面量和使用new RegExp构造函数创建的正则表达式有什么区别

    JS正则表达式是一种用于匹配字符串模式的工具。在JS中,我们可以使用两种方式来创建正则表达式:字面量和构造函数。 JS正则表达式字面量 这是一种方便快速创建正则表达式的方式,使用斜杠(/)将模式包含在一对反斜杠(\)之间,并添加标志(如i、g和m): const pattern = /test/i; // 匹配test单词,不区分大小写 RegExp构造函数…

    JavaScript 2023年6月10日
    00
  • JS获取字符串实际长度(包含汉字)的简单方法

    要获取字符串实际长度(包含汉字),必须考虑到汉字所占的长度和编码,下面详细介绍一下获取字符串实际长度的方法。 方法一:使用正则表达式和charCodeAt()方法计算汉字转义编码长度 该方法使用正则表达式以及charCodeAt()方法来获取字符串的实际长度,步骤如下: 定义一个字符串变量,比如str,用于存储待处理的字符串。 初始化2个计数器,cbis:字…

    JavaScript 2023年5月28日
    00
  • js下用gb2312编码解码实现方法

    实现 JS 下使用 GB2312 编码解码的方法主要有两种,分别是通过 iconv-lite 库和手动实现 GB2312 编码解码算法。 方式一:使用 iconv-lite 库 首先需要安装 iconv-lite 库,运行以下命令: bash npm install iconv-lite 使用 iconv-lite 库的 encode 函数将字符串进行 GB…

    JavaScript 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部