重温js——正则表达式
Posted twinkle||cll
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重温js——正则表达式相关的知识,希望对你有一定的参考价值。
正则表达式是一种规则,在语法上各个语言都是一样的,有点是通用性很高,缺点是在平常开发中使用的频率并不是很高,主要使用的范围在用于判断字符串里面的规则。
语法
语法和定义变量一样,有两种:字面量模式 和 构造函数模式。
var reg1 = /规则/标志;
var reg2 = new RegExp('规则','标志');
正则实例成员
global
: 是否开启了全家匹配
ignoreCase
: 是否忽略大小写,和上面是一样的都是只读multiline
: 是否是多行匹配(只读)source
: 当前匹配的规则资源。(只读)
lastIndex
: 匹配的最后位置,这个对于全局匹配是很有用的。不开启全家匹配是不会有影响的,这个参数不是只读的。
test
方法: 测试某个字符串是否满足规则
正则表达的匹配模式是贪婪模式,尽量匹配多一点。如果不想使用贪婪模式,在量词后面加上
?
,就不会是贪婪模式
exec
方法: 执行正则匹配,输出匹配的结果。
捕获组
在正则中用小括号包裹的部分,称之为捕获组。
捕获组还可以命名,命名的方式是在小括号里面的前面添加一个 ?<名字>
,这种称为具名捕获组。
由于捕获组是会影响效率,有好多时候我们只是需要把括号里面当作一个整体。其实我们是不想要捕获的,使用的方式是 ?:
反向引用
在正则表达式中,使用某个捕获组,
\\捕获组编号
(捕获的编号可以是名字或者是数字)
正向断言(预查)
检查某个字符串后面的字符是否满足某个规则,该规则不成为捕获的结果。语法是
?=
负向断言(预查)
检查某个字符串后面的字符是否不满足某个规则,该规则不成为捕获的结果。语法是
?!
以上是关于重温js——正则表达式的主要内容,如果未能解决你的问题,请参考以下文章