正则表达式

一. 两种创建方法
 1.正则字面量
 var reg = /正则表达式/[修饰字符];
 var reg = /abc/img; 不区分顺序和个数 i m g img ig gi ...只要有就可以

 2.new RegExp() 正则的构造
 var reg = new RegExp(正则表达式,[修饰字符])

二.方括号 [] 一个方括号表示匹配一个字符


 
 [abcd] 匹配abcd任意一个字符
 [abc123] 匹配abc123任意一个字符
 [a-z] 匹配a-z之间的任意字符,可以表示一个范围,中间用-连接
 [0-9]
 [A-z] 按照ascii编码来排序的,A-Z a-z的任意字符
 [^abcd] 写在[]里面的^表示取反, 除了abcd全都可以匹配
 var str = "abcde";
 var reg = /[^abcd]/g;
 console.log(str.match(reg));

三.常用的元字符

. 匹配除换行符以外的任意字符 
\w 匹配字母或数字或下划线或汉字 
\s 匹配任意的空白符 
\d 匹配数字 
\b 匹配单词的开始或结束 
^ 匹配字符串的开始 
$ 匹配字符串的结束 例: ^\d{5, 12}$ 
和忽略大小写的选项类似,有些正则表达式处理工具还有一个处理多行的选项,如果选中了这个选项,^和$的意义就变成了匹配行的开始处和结束处。

四.量词

 1.量词?的应用

 

1 re.search(r"^travell?er$", "traveler") != None #  => True
2 
3 re.search(r"^travell?er$", "traveller") != None     #  => True

 

2.量词+的应用

1 re.search(r"^<[^>]+>$", "") != None      #  => True
2 
3 re.search(r"^<[^>]+>$", "
4 
5 ") != None         #  => True
6 re.search(r"^<[^>]+>$", "<>") != None           #  => False

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

1  var str = "aaaaaaaaaaaaaaaabc";
2  var reg = /a{5}/g;
3  console.log(str.match(reg));

4.n{X,Y} 匹配包含 X 至 Y 个 n 的序列的字符串

1  正则表达式默认的是贪婪模式,按照最多的进行匹配
2 var str = "aaaaaaaaaaaaaaaaabc";
3  var reg = /a{1,3}?/g;   //后面加上问好表示非贪婪模式,按照最少的进行匹配
4      console.log(str.match(reg));

五.属性

正则表达式支持的属性有 4 个,分别为 Global、IgnoreCase、Multiline、Pattern

 

Global 全局搜索:是否具有标志 g

 

IgnoreCase 大小写敏感:是否具有标志 i

Multiline 多段搜索:具有标志 m

lastIndex:一个整数,标示开始下一次匹配的字符位置 。      游标,可以获取可以赋值

六.方法

 

 

转载于:https://www.cnblogs.com/yuyuanwen/p/11046501.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值