知识点:

先生成一个正则规则的对象,使用test()对传入的字符串进行验证,返回布尔类型

代码:

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>JS常用正则表达式</title>
</head>
<body>
<pre>
姓 名:<input id="name" onblur="regname()"> <span id="ts2"></span>
身份证号:<input id="sfz" onblur="regsfz()"> <span id="ts3"></span>
手 机 号:<input id="cellphone" onblur="regcellphone()"> <span id="ts4"></span>
邮箱地址:<input id="email" onblur="regemail()"> <span id="ts5"></span>
密 码:<input type="password" id="password" onblur="regpassword()"> <span id="ts6"></span>
提 示:<span id="ts" style="color:orange;">请正确填写表单</span>
</pre>
</body>
</html>
<script>
var ts = document.getElementById("ts");
var ts2 = document.getElementById("ts2");
var ts3 = document.getElementById("ts3");
var ts4 = document.getElementById("ts4");
var ts5 = document.getElementById("ts5");
var ts6 = document.getElementById("ts6");
//检测姓名
function regname(){

var name = document.getElementById("name").value;
var regname = /^[\u4E00-\u9FA5]+$/;
if(name == "" || name == null){

ts.innerHTML = "姓名栏未输入任何内容";
ts.style = "color:red";
ts2.innerHTML = "错误";
ts2.style = "color:red";
//这种写法实际上是对象赋值,因为JS读取变量ts时ts只是一个标签,JS会将其生成一个对象来描述
}else if(!regname.test(name)){
ts.innerHTML = "姓名框内必须输入汉字";
ts.style = "color:red";
ts2.innerHTML = "错误";
ts2.style = "color:red";
}else{
ts.innerHTML = "姓名输入正确";
ts.style = "color:green";
ts2.innerHTML = "正确";
ts2.style = "color:green";
}
}
function regsfz(){

var sfz = document.getElementById("sfz").value;
var regsfz = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; ;
if(sfz == "" || sfz == null){

ts.innerHTML = "身份证栏未输入任何内容";
ts.style = "color:red";
ts3.innerHTML = "错误";
ts3.style = "color:red";
//这种写法实际上是对象赋值,因为JS读取变量ts时ts只是一个标签,JS会将其生成一个对象来描述
}else if(!regsfz.test(sfz)){
ts.innerHTML = "必须输入正确是身份证";
ts.style = "color:red";
ts3.innerHTML = "错误";
ts3.style = "color:red";
}else{
ts.innerHTML = "身份证输入正确";
ts.style = "color:green";
ts3.innerHTML = "正确";
ts3.style = "color:green";
}
}

function regcellphone(){

var cellphone = document.getElementById("cellphone").value;
var regcellphone = /^(1[3-5][0-9]{9})|(15[89][0-9]{8})$/ ;
if(cellphone == "" || cellphone == null){

ts.innerHTML = "手机栏未输入任何内容";
ts.style = "color:red";
ts4.innerHTML = "错误";
ts4.style = "color:red";
//这种写法实际上是对象赋值,因为JS读取变量ts时ts只是一个标签,JS会将其生成一个对象来描述
}else if(!regcellphone.test(cellphone)){
ts.innerHTML = "必须输入正确的手机号";
ts.style = "color:red";
ts4.innerHTML = "错误";
ts4.style = "color:red";
}else{
ts.innerHTML = "手机号输入正确";
ts.style = "color:green";
ts4.innerHTML = "正确";
ts4.style = "color:green";
}
}
function regemail(){

var email = document.getElementById("email").value;
var regemail = /\w@\w*\.\w/;
if(email == "" || email == null){

ts.innerHTML = "邮件号栏未输入任何内容";
ts.style = "color:red";
ts5.innerHTML = "错误";
ts5.style = "color:red";
//这种写法实际上是对象赋值,因为JS读取变量ts时ts只是一个标签,JS会将其生成一个对象来描述
}else if(!regemail.test(email)){
ts.innerHTML = "必须输入正确的邮箱";
ts.style = "color:red";
ts5.innerHTML = "错误";
ts5.style = "color:red";
}else{
ts.innerHTML = "邮箱输入正确";
ts.style = "color:green";
ts5.innerHTML = "正确";
ts5.style = "color:green";
}
}
function regpassword(){

var password = document.getElementById("password").value;
var regpassword = /^[a-zA-Z\d_]{8,}$/ ;
if(password == "" || password == null){

ts.innerHTML = "密码栏未输入任何内容";
ts.style = "color:red";
ts6.innerHTML = "错误";
ts6.style = "color:red";
//这种写法实际上是对象赋值,因为JS读取变量ts时ts只是一个标签,JS会将其生成一个对象来描述
}else if(!regpassword.test(password)){
ts.innerHTML = "必须输入不得少于八位数字或字母组成密码";
ts.style = "color:red";
ts6.innerHTML = "错误";
ts6.style = "color:red";
}else{
ts.innerHTML = "密码输入符合要求";
ts.style = "color:green";
ts6.innerHTML = "正确";
ts6.style = "color:green";
}
}
//常用JS正则表达式:http://www.cnblogs.com/hai-ping/articles/2997538.html
</script>

效果图:

JS正则表达式 简单应用的更多相关文章

  1. JS正则表达式简单总结

    正则表达式定义 JavaScript中的正则表达式用RegExp 对象表示,可以使用RegExp ()构造函数来创建RegExp对象,不过RegExp 对象更多的是通过一种特殊的直接量愈发来创建. 例 ...

  2. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

  3. Python之路-(js正则表达式、前端页面的模板套用、Django基础)

    js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...

  4. JS正则表达式大全

    转自:http://wenku.baidu.com/link?url=3y930kC7F6D3wQdMjQ3fVDmiA9Wfebs_QK0UB3N3mFaEoKg4ytZORPopxufeYA6si ...

  5. js正则表达式replace里有变量的解决方法用到RegExp类

    一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但 ...

  6. js正则表达式入门

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  7. C# 使用js正则表达式,让文本框只能输入数字和字母,最大长度5位

    使用js正则表达式,让文本框只能输入数字和字母,最大长度5位,只需要加个onkeyup事件,即可简单实现 <asp:TextBox ID="txtBegin" runat=& ...

  8. JS 正则表达式用法

    JS 正则表达式用法简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或 ...

  9. 【正则】精通JS正则表达式,没消化 信息量太大,好文

    http://www.jb51.net/article/25313.htm 正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用 ...

随机推荐

  1. 九九乘法表(Python实现)

    a = 1 #while实现 while a: b = 1 while b: print(str(b)+'*'+str(a),end='=') print(a*b,end=' ') if b == a ...

  2. android动画解析(初级)

    效果图: ObjectAnimator继承自ValueAnimator的,底层的动画实现机制也是基于ValueAnimator来完成的,因此ValueAnimator仍然是整个属性动画当中最核心的一个 ...

  3. 【Java】对象、类(抽象类与内部类)、接口

    博文内容概况 对象和类 抽象类 接口 内部类 对象和类 对象是对客观事物的抽象,类是对对象的抽象.类是一种数据类型,其外观和行为由用户定义.类中可以设置两种类型的元素:字段(有时被称为数据成员)和方法 ...

  4. java基础 数组 Set Map 集合综合应用 生成带0的随机字符串 "00000001" 水果商品号问题

    package com.swift.test01; /*有四种水果(苹果,香蕉,西瓜,橘子) 1.给每种水果设定一个商品号,商品号是8个0-9的随机数,商品号码不能重复, 最小值 "0000 ...

  5. java基础 java中枚举的应用 抽象方法问题

    package com.swift.meiju; import org.junit.Test; public class Demo{ @Test public void test() { System ...

  6. AMD、CMD、Common规范及对比

    https://blog.csdn.net/bluesky1215/article/details/71081780  1.名词解释 AMD:Asynchronous Modules Definiti ...

  7. 51nod 1298 圆与三角形——计算几何

    题目链接:http://www.51nod.com/Challenge/Problem.html#!#problemId=1298 转化成判断三条线段和圆是否

  8. 批量更新python库

    import pip from subprocess import call for dist in pip.get_installed_distributions(): try: call(&quo ...

  9. scrapy--json(360美图)

    之前开始学习scrapy,接触了AJax异步加载.一直没放到自己博客,趁现在不忙,也准备为下一个爬虫做知识储存,就分享给大家. 还是从爬取图片开始,先上图给大家看看成果,QAQ. 一.图片加载的方法 ...

  10. JZOJ| 5910. DuLiu

    Description          LF是毒瘤出题人中AK IOI2019,不屑于参加NOI的唯一的人.他对人说话,总是满口垃圾题目者也,教人半懂不懂的.因为他姓李,别人便从QQ群上的“毒瘤李F ...