Javascript的表单验证-揭开正则表达式的面纱


Posted in Javascript onMarch 18, 2016

推荐阅读:Javascript的表单验证长度

Javascript的表单验证-提交表单

Javascript的表单验证-初识正则表达式

在上篇文章给大家介绍了javascript的表单验证-初识正则表达式,本文给大家介绍Javascript的表单验证-揭开正则表达式的面纱,具体详情请看全文。

用元字符匹配相应的字符类型

创建正则表达式有点像创建字符串字面量,只不过正则表达式出现在一对”/”里

正则表达式中会用到一级元字符,用于连接字母与数字

“.” 匹配任何字符,除换行符外

“\d”匹配任何数字字符

“\w”匹配任何字母或数字字符

“\s”匹配空格

“^”字符串需以模式起始

“$”字符串需以模式结束

元字符不只表示一个字面量字符,它乃是用于构建正则表达式的符号

例:这里有三个字符

“A”,”7”,”%”

/\w/可以匹配”A”,”7”

/^\d/可以匹配”7”

/\d/可以匹配”7”

/./可以匹配”A”,”7”,”%”

但是包含多个字符的字符串怎么办?

“2nite”,”007”,”catch22”,

/^\d/可匹配到”2nite”,”007”(开头都是数字)

/\d\d\d/可匹配”007”(一行中有3个数字)

/^cat/可匹配”catch22”(以cat字符开头)

/\d\d$/可匹配”catch22”(必须以两个数字来结尾)

例如:匹配美国邮编,邮编格式为#####-####

/^\d\d\d\d\d-\d\d\d\d$/

用限定符指定字符出现的次数

限定符用于控件子模式出现于正则表达式里的次数

限定符前为子模式,限定符即应用在子模式,并控制子模式出现在模式里的次数

“*”限定符前的子模式必须出现0次或多次

“+”限定符前的子模式必须出现1次或多次

“?”限定符前的子模式必须出现0次或1次

“{n}”限定符前的子模式必须恰好出现N次

“()”集合字符或/和元字符,成为子模式

同样是以邮政编码为例

/^\d{5}-\d{4}$/

可以看出,加上限定符的表达式比只有元字符的表达式更加的精准

/\w*/匹配任何字母数字字符,包括空字符串

/.+/匹配一个出现一次以上的字符串(用于匹配非非空的字符串)

/(Hot)??Donuts/可匹配出Hot或Donuts

*在正则表达式里想要匹配具有特殊意义的字符的时候,可以用反斜杠

例如匹配$:\$*

利用正则表达式验证数据

JavaScript里的正则表达式由RegExp对象表示,其中包含使用正则表达式验证数据的关键?test()方法,它检查字符串里是否存在指定的模式

例:

var regex=/^\d{5}$/;//匹配5位数邮政编码的正则表达式;

正则表达式对象字面量自动合建RegExp对象

if(!regex.test(inputFiled.value)) 
{ 
//在正则表达式上调用text方法 
//如果符合合正则表达式的要求,返回true 
//如果不符合正则表达式的要求,返回false 
}

代码案例

接下来,写一个专门用来验证字符串格式的方法

//regex正则表达式
//inputStr需要验证的字符串
//helpText提供信息提示的一个span标签
//helpMessage提示信息内容
//
function validateRegExp(regex,inputStr,helpText,helpMessage)
{
if(!regex.test(inputStr))
{
if(helpText!=null)
helpText.innerHTML=helpMessage;
return false;
}
else{
if(helpText!=null)
helpText.innerHTML="";
}
return true;
}
function validateDate(inputFild,helpText)
{
if(!validateNonEmpty(inputFild,helpText)//先检查参数是非空的
{
return false;
}
return validateRegExp(/^\d{2}\/\d{2}\/\d{4}$/,inputFild,helpText,"请输入正确的日期格式");//调用正则验证方法
}

好了,本文到此结束,感谢大家对三水点靠木网站支持!

Javascript 相关文章推荐
js 数据类型转换总结笔记
Jan 17 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
Apr 12 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
Jul 15 Javascript
jQuery中delegate()方法用法实例
Jan 19 Javascript
js代码验证手机号码和电话号码是否合法
Jul 30 Javascript
浅析ES6的八进制与二进制整数字面量
Aug 30 Javascript
Javascript动画效果(4)
Oct 11 Javascript
JS正则获取HTML元素的方法
Mar 31 Javascript
js获取地址栏参数的两种方法
Jun 27 Javascript
JavaScript实现简单图片轮播效果
Aug 21 Javascript
详解swipe使用及竖屏页面滚动方法
Jun 28 Javascript
Vue+webpack+Element 兼容问题总结(小结)
Aug 16 Javascript
Javascript的表单验证-初识正则表达式
Mar 18 #Javascript
Javascript的表单验证-提交表单
Mar 18 #Javascript
Javascript的表单与验证-非空验证
Mar 18 #Javascript
悬浮广告方法日常收集整理
Mar 18 #Javascript
Js与Jq获取浏览器和对象值的方法
Mar 18 #Javascript
深入理解JavaScript程序中内存泄漏
Mar 17 #Javascript
【JS+CSS3】实现带预览图幻灯片效果的示例代码
Mar 17 #Javascript
You might like
php.ini修改php上传文件大小限制的方法详解
2013/06/17 PHP
解析thinkphp import 文件内容变量失效的问题
2013/06/20 PHP
解决PHP里大量数据循环时内存耗尽的方法
2015/10/10 PHP
Yii1.1中通过Sql查询进行的分页操作方法
2017/03/16 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
js获取当前页面路径示例讲解
2014/01/08 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
jquery validate demo 基础
2015/10/29 Javascript
多种js图片预加载实现方式分享
2016/02/19 Javascript
bootstrap组件之按钮式下拉菜单小结
2017/01/19 Javascript
AngularJS中ng-class用法实例分析
2017/07/06 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
vue 使用html2canvas将DOM转化为图片的方法
2018/09/11 Javascript
如何用webpack4.0撸单页/多页脚手架 (jquery, react, vue, typescript)
2019/06/18 jQuery
js中的this的指向问题详解
2019/08/29 Javascript
微信小程序用户登录和登录态维护的实现
2020/12/10 Javascript
[01:04:01]2014 DOTA2华西杯精英邀请赛5 24 DK VS VG
2014/05/25 DOTA
python字典操作实例详解
2017/11/16 Python
python3 破解 geetest(极验)的滑块验证码功能
2018/02/24 Python
Python检查和同步本地时间(北京时间)的实现方法
2018/12/03 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
python matplotlib饼状图参数及用法解析
2019/11/04 Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
2020/02/14 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
python中K-means算法基础知识点
2021/01/25 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
Larsson & Jennings官网:现代瑞士钟表匠
2018/03/20 全球购物
运动会100米解说词
2014/01/23 职场文书
聚美优品广告词改编
2014/03/14 职场文书
2014年党的群众路线整改措施思想汇报
2014/10/12 职场文书
贫困证明怎么写
2015/06/16 职场文书
公司出差管理制度范本
2015/08/05 职场文书
Python OpenGL基本配置方式
2022/05/20 Python