Js 正则表达式知识汇总


Posted in Javascript onDecember 02, 2014

正则表达式:

1、什么是RegExp?RegExp是正则表达式的缩写。RegExp 对象用于规定在文本中检索的内容。

2、定义RegExp:var +变量名=new RegExp();

3、RegExp 对象有 3 个方法:

1)test()检索字符串中的指定值,返回值是true或false.

var p1=new Reg("e");

document.write(Reg.test("welcome to China!"));

2)exec()

var p1=new Reg("e");

document.write(Reg.exec("welcome to China!"));

3) compile()

var p1=new Reg("e");

document.write(Reg.compile("welcome to China!"));

4、修饰符

1)i  执行对大小写不敏感的匹配

2)g 执行全局匹配

3)m 执行多行匹配

5、方括号(用于查找某个范围内的字符)

1)[abc]  查找方括号之间的任何字符

2)[^abc] 查找任何不在方括号之间的字符

3)[0-9]  查找任何0-9之间的数字

4)[a-z] 查找任何小写a-z之间的字符

5)[A-Z]查找任何大写A-Z之间的字符

6)[A-z] 查找任何大写A-小写z之间的字符

7)[adgk] 查找给定集合内的任何字符

8)[^adgk]查找给定集合外的任何字符

9)(red|biue|green)查找任何给定的选项

6、元字符

1)\w:查找单词字符

2)\W:查找非单词字符

3)\d:查找数字

4)\D:查找非数字字符

7、 量词

n+匹配任何包含至少一个 n 的字符串。

n*匹配任何包含零个或多个 n 的字符串。

n?匹配任何包含零个或一个 n 的字符串。

n{X}匹配包含 X 个 n 的序列的字符串。

n{X,Y}匹配包含 X 或 Y 个 n 的序列的字符串。

n{X,}匹配包含至少 X 个 n 的序列的字符串。

n$匹配任何结尾为 n 的字符串。

^n匹配任何开头为 n 的字符串。

?=n匹配任何其后紧接指定字符串 n 的字符串。

?!n匹配任何其后没有紧接指定字符串 n 的字符串。

【练习题1】判断输入身份证格式是否正确

<body>

<label>请输入身份证号:</label>

<input name="" type="text" id="shenfen"/>

<input name="" type="submit" id="textfi" value="提交1" onclick="test()"/><!--提交按钮,触发函数-->

</body>

</html>

<!--判断身份证是否输入正确-->

<script>

function test()

{

var reg=new RegExp(/^[0-9]{17}[0-9|X]$/);<!--正则表达式的格式:以/^开头,以$/结尾,数字、字母范围用中括号-->

var text=document.getElementById("shenfen").value;<!--输入文本框的字符串的id跟文本框的id对应-->

//判断地区是否合法(用if...else)

if(reg.test(text))

{

alert("输入正确")

}

else

{

alert("输入错误");

}

}

</script>

效果图:

Js 正则表达式知识汇总

【练习题2】判断输入的邮箱格式是否正确

<body>

<label>请输入您的邮箱:</label>

<input name="" type="text" id="youxiang"/>

<input name="" type="submit" value="提交2" onclick="y()" />

</body>

</html>

<script>

function y()

{

var yx=new RegExp(/^[0-9|A-z|_]{1,17}@[A-z|0-9]{1,5}.(com|cn|net|org|cc)$/);

var shuru=document.getElementById("youxiang").value; <!--定义变量,调用的是整个function,,必须把变量写在function内-->

if(yx.test(shuru))<!--test正则表达式的方法-->

{

alert("zhengque");

}

else

{

alert("cuowu");

}

}

</script>

效果图:

Js 正则表达式知识汇总

相对来说,js中正则表达式是一个很重要的点,很多地方都需要配合正则才行,所以小伙伴一定要学好这块内容。

Javascript 相关文章推荐
浅谈Javascript事件模拟
Jun 27 Javascript
js动画效果制件让图片组成动画代码分享
Jan 14 Javascript
JavaScript通过正则表达式实现表单验证电话号码
Mar 07 Javascript
Javascript实现简单二级下拉菜单实例
Jun 15 Javascript
用javascript读取xml文件读取节点数据
Aug 12 Javascript
如何实现JavaScript动态加载CSS和JS文件
Dec 28 Javascript
原生js实现鼠标跟随效果
Feb 28 Javascript
js实现3D图片展示效果
Mar 09 Javascript
纯jQuery实现前端分页功能
Mar 23 jQuery
详解node Async/Await 更好的异步编程解决方案
May 10 Javascript
Bootstrap4 gulp 配置详解
Jan 06 Javascript
Vue动画事件详解及过渡动画实例
Feb 09 Javascript
21个JavaScript事件(Events)属性汇总
Dec 02 #Javascript
bootstrap改变按钮加载状态
Dec 01 #Javascript
使用ajax+jqtransform实现动态加载select
Dec 01 #Javascript
Javascript字符串浏览器兼容问题分析
Dec 01 #Javascript
为什么Node.js会这么火呢?Node.js流行的原因
Dec 01 #Javascript
Javascript学习指南
Dec 01 #Javascript
Javascript模块化编程详解
Dec 01 #Javascript
You might like
php 友好URL的实现(吐血推荐)
2008/10/04 PHP
php中常用的预定义变量小结
2012/05/09 PHP
php接口和抽象类使用示例详解
2014/03/02 PHP
php银联网页支付实现方法
2015/03/04 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
php实现的数字验证码及数字运算验证码
2015/07/30 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
style、 currentStyle、 runtimeStyle区别分析
2010/08/01 Javascript
jQuery EasyUI API 中文文档 - Panel面板
2011/09/30 Javascript
代码获取历史上的今天发生的事
2014/04/11 Javascript
JavaScript中输出标签的方法
2014/08/27 Javascript
Bootstrap 折叠(Collapse)插件用法实例详解
2016/06/01 Javascript
jQuery 实现ajax传入参数含有特殊字符的方法总结
2016/10/17 Javascript
Bootstrap文件上传组件之bootstrap fileinput
2016/11/25 Javascript
常用jQuery选择器汇总
2017/02/02 Javascript
从零学习node.js之文件操作(三)
2017/02/21 Javascript
javascript 中模板方法单例的实现方法
2017/10/17 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
angular2 NgModel模块的具体使用方法
2019/04/10 Javascript
JS中的算法与数据结构之栈(Stack)实例详解
2019/08/20 Javascript
以一段代码为实例快速入门Python2.7
2015/03/31 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
python 列表删除所有指定元素的方法
2018/04/19 Python
对python 匹配字符串开头和结尾的方法详解
2018/10/27 Python
python采集微信公众号文章
2018/12/20 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
Django组件cookie与session的具体使用
2019/06/05 Python
python二维码操作:对QRCode和MyQR入门详解
2019/06/24 Python
python 命令行传入参数实现解析
2019/08/30 Python
pytorch:model.train和model.eval用法及区别详解
2020/02/20 Python
python实现横向拼接图片
2020/03/23 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
Selenium及python实现滚动操作多种方法
2020/07/21 Python
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
详解mysql三值逻辑与NULL
2021/05/19 MySQL