欢迎来到代码驿站!

JavaScript代码

当前位置:首页 > 网页前端 > JavaScript代码

javascript正则表达式总结

时间:2021-05-03 10:00:33|栏目:JavaScript代码|点击:

工具

Regexpal是一个在线Javascript正则表达式处理器,地址是:http://www.regexpal.com

学习正则重要的是实践操作,不妨举个栗子:

匹配号码:707-827-7019

字符组匹配

[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]
\d匹配任意阿拉伯数字
\D匹配任何非阿拉伯数字

.匹配任意字符

\d\d\d\D\d\d\d\D\d\d\d\d\D
\d\d\d.\d\d\d.\d\d\d\d.

捕获分组与后向应用

用圆括号()创建分组,用\1来对捕获分组内容进行向后引用

(\d)\d\1   则匹配707

完整匹配号码:

^(\(\d{3}\)|^\d{3}[.-]?)?\d{3}[.-]?\d{4}$
^ 表示一行起始位置
( 表示捕获分组的起始符
\( 表示左括号
\d{3} 表示匹配三位数字
\) 表示右括号
| 表示选择
[.-]? 匹配一个可选的点号或连字符
) 捕获分组的结束符
? 表示分组可选
$ 表示行结束为止

边界

匹配行或字符串起始位置使用脱字符 ^
匹配行或字符串末尾位置使用美元符 $

量词

量词默认是贪心的
贪心的量词会首先匹配整个字符串。尝试匹配时,他会选定尽可能多的内容,也就是整个输入。量词首先匹配整个字符,如果失败则回退一个字符再次尝试。这个过程就叫做 回溯。
懒惰的量词是从目标的起始位置开始寻找匹配。每次检查字符串的一个字符,寻找他要匹配的内容。最后,他会尝试匹配整个字符串。
占有量词会覆盖整个目标,然后尝试寻找匹配内容,但是他只尝试一次,不会回溯。
如使用 .* 匹配任何字符零次或多次

贪心量词

使用花括号{}可限制某个模式在某个范围内匹配的次数,另外,未经修饰的量词就是贪心量词
7{1,}与7+
7{0,}与7*
7?与7{0,1}
本质上则是一样
7{m,n} 则会匹配m到n次

懒惰量词

末尾加上?则使量词变懒惰
7?? 首先7?匹配零个或一个7,懒惰后不会匹配任何内容
7*? 匹配零个7
7+? 匹配一个7
7{m,n}? 匹配m个7

关于正则匹配html,xml标签,下次再写

上一篇:详解如何提升JSON.stringify()的性能

栏    目:JavaScript代码

下一篇:JavaScript中的原型prototype完全解析

本文标题:javascript正则表达式总结

本文地址:http://www.codeinn.net/misctech/113652.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有