JS正则表达式 简单应用
知识点:
先生成一个正则规则的对象,使用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正则表达式 简单应用的更多相关文章
- JS正则表达式简单总结
正则表达式定义 JavaScript中的正则表达式用RegExp 对象表示,可以使用RegExp ()构造函数来创建RegExp对象,不过RegExp 对象更多的是通过一种特殊的直接量愈发来创建. 例 ...
- JS正则表达式常用总结
正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...
- Python之路-(js正则表达式、前端页面的模板套用、Django基础)
js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../ 用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...
- JS正则表达式大全
转自:http://wenku.baidu.com/link?url=3y930kC7F6D3wQdMjQ3fVDmiA9Wfebs_QK0UB3N3mFaEoKg4ytZORPopxufeYA6si ...
- js正则表达式replace里有变量的解决方法用到RegExp类
一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但 ...
- js正则表达式入门
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- C# 使用js正则表达式,让文本框只能输入数字和字母,最大长度5位
使用js正则表达式,让文本框只能输入数字和字母,最大长度5位,只需要加个onkeyup事件,即可简单实现 <asp:TextBox ID="txtBegin" runat=& ...
- JS 正则表达式用法
JS 正则表达式用法简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或 ...
- 【正则】精通JS正则表达式,没消化 信息量太大,好文
http://www.jb51.net/article/25313.htm 正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用 ...
随机推荐
- data-ng-init 指令
1.data-ng-init指令为AngularJS应用程序定义了一个初始值. 2.通常情况下,data-ng-init指令并不常用,将会使用控制器或模块来代替它.
- Delphi的Edit控件中只能输入数字且只能输入一个小数点
使用这种功能必须使用 OnKeyPress 事件,该事件是在窗体中获得键盘输入的焦点,并且在用户按键时发生.OnKeyPress 事件中有个重要参数:Key.Key 参数为Char 型,它能够获得用户 ...
- 一张思维导图带你梳理HashMap相关知识
HashMap可以说是java中最常见也是最重要的key-value存储结构类,很多程序员可能经常用,但是不一定清楚这个类背后的数据结构和相关操作原理,为了复习HashMap相关的知识,今天花了一天的 ...
- datatable中reload和load的区别
ajax.reload()用于datatable表某个数据的变化而重新加载 ajax.url(url).load() 用于切换url时,datatable重新获取数据,加载.
- 汇编:输出寄存器AX中的内容(子程序)
;输出寄存器AX中的内容(子程序) DATAS segment DATAS ends CODES segment START: mov AX,DATAS mov DS,AX ;正式代码开始 mov A ...
- 有一段<script>代码,效果是点击<p>就会弹出信息,但是有的<p>点击会有效果,有的没有效果
问题:有一段<script>代码,效果是点击<p>就会弹出信息,但是有的<p>点击会有效果,有的没有效果 解决: 页面代码是至上而下执行的,如果你的这个标签在< ...
- Form表单提交,js验证
Form表单提交,js验证 1, Onclick() 2, Onsubmit() Button标签 input (属性 submit button )标签 Input type=button ...
- #Python编程从入门到实践#第二章笔记
1.变量 (1)变量名只能包含字母.数字和下划线,不能包含空格 (2)不要将python关键字与函数名作为变量名 (3)简短有描述性,避免使用小写字母l和大写字母O (4)python 始终 ...
- VUE前端无法启动
cd 到client中,使用npm run dev ,一直卡着也不报错,启动不了项目 可以直接使用 ,需要进入root目录进行 cnpm install npm -g
- 購買管理(MM)
■購買管理■ [購買伝票]EKKO: ヘッダ EKPO: 明細 EKET: 納入日程行 EKPA: 取引先機能 EKKN: 勘定設定 EKBE: 後続伝票 EKBEH: 削除済み後続伝票履歴 [請求書 ...