js正则

创建方式

1、实例创建

var reg = new RegExp('abc');
var reg = new RegExp('abc', 'img');

2、字面量

var  reg=/abc/;
var  reg=/abc/img;  

说明

pattern:正则表达式  
flags:标识(修饰符)
标识主要包括:
1. i 忽略大小写匹配
2. m 多行匹配,即在到达一行文本末尾时还会继续寻常下一行中是否与正则匹配的项
3. g 全局匹配 模式应用于所有字符串,而非在找到第一个匹配项时停止

区别

  1. 实例创建方式可以进行字符串拼接,字面量不行
var regParam = 'cm';
var reg1 = new RegExp(regParam+'1');
var reg2 = /regParam/;
console.log(reg1);  //   /cm1/
console.log(reg2);  //  /regParam/
  1. 实例创建需要转义特殊字符, 字面量不需要
var reg1 = new RegExp('\d');  //    /d/ 
var reg2 = new RegExp('\\d')  //   /\d/
var reg3 = /\d/;              //  /\d/

 

元字符

1、特殊含义元字符

符号说明
\d0-9之间的任意一个数字 \d只占一个位置
\w数字、字母 、下划线 0-9 a-z A-Z _
\s空格或者空白等
\D除了\d
\W除了\w
\S除了\s
.除了\n之外的任意一个字符
\转义字符
|或者
()分组
\n匹配换行符
\b匹配边界 字符串的开头和结尾 空格的两边都是边界 => 不占用字符串位数
^限定开始位置 => 本身不占位置
$限定结束位置 => 本身不占位置
[a-z]任意字母 []中的表示任意一个都可以
[^a-z]非字母 []中^代表除了
[abc]abc三个字母中的任何一个 [^abc]除了这三个字母中的任何一个字符

2、限定符 - 代表次数的量词元字符

字符描述例子
*0或多次,等价于{0,}'ab*' 能匹配 "a" 和 "abb"
+1或多次,等价于 {1,}'ab+' 能匹配 "ab" 和 "abb",不能匹配 "a"
?0次或1次,等价于 {0,1}'ab(cd)?' 可以匹配 "ab" 、 "abcd" 中的 "abcd" 、 "adxx" 中的 "ab"
{n}正好n次'o{2}' 不能匹配 "aob" 中的 'o',但是能匹配 "food" 中的两个 o
{n,}n到多次'o{2,}' 不能匹配 "aob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o{1,}' 等价于 'o+'。'o{0,}' 则等价于 'o*'。
{n,m}n次到m次'o{1,3}' 将匹配 "fooooood" 中的前三个 o。'o{0,1}' 等价于 'o?'。逗号和两个数之间不能有空格。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值