码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2017-08-10 20:56:56      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:结束   贪婪模式   包括   等价   xxx   划线   一个   常用   定义类   

一、RegExp对象

  字面量:var reg = /abc/;

  构造函数:var reg = new RegExp(‘abc‘);

二、修饰符

  g:global 全文搜索,如不添加g,搜索到第一个匹配停止

  i:ignore case 忽略大小写,默认大小写敏感

  m:multiple lines 多行搜索

三、元字符

  3.1 常用元字符

  \t 水平制表符

  \v 垂直制表符

  \n 换行符

  \r 回车符

  \0 空字符

  \f 换页符

  \cX 与X对应的控制字符(Ctrl+X)

  3.2 字符类

  [ ]:构建一个简单的类,如‘[a1b2c3d4]‘.replace(/[abc]/g,‘x‘)---->x1x2x3d4

  反向类/负向类:

  [^abc],表示不是字符a或b或c的内容。‘[a1b2c3d4]‘.replace(/[^abc]/g,‘x‘)---->axbxcxxx

  范围类:

  [a-z]:从a到z任意字符,包括a和z

  [a-zA-Z]:从a到z大小写

  [0-9-]:从0到9包括‘-’

  预定义类

  .:等价于[^\r\n] 除了回车符和换行符之外的所有字符

  \d:等价于[0-9] 数字字符

  \D:等价于[^0-9] 非数字字符

  \s:等价于[\t\n\x0B\f\r] 空白符

  \S:等价于[^\t\n\x0B\f\r] 非空白符

  \w:等价于[a-zA-Z_0-9] 单词字符(字母、数字、下划线)

  \W:等价于[^a-zA-Z_0-9] 非单词字符

  边界

  ^:以xxx开始

  $:以xxx结束

  \b:单词边界

  \B:非单词边界

  量词

  ?:出现零次或一次(最多出现一次)

  +:出现一次或多次(至少出现一次)

  *:出现零次或多次(任意次)

  {n}:出现n次

  {n,m}:出现n到m次

  {n,}:至少出现n次

  贪婪模式与非贪婪模式

  贪婪模式:尽可能多的匹配 如:‘12345678‘.replace(/\d{3,6}/g,‘X‘);----->‘X78‘

  非贪婪模式:在量词后面加上?即可。让正则表达式尽可能少的匹配,一旦匹配成功便不再继续匹配。如:‘12345678‘.replace(/\d{3,6}?/g,‘X‘);----->‘XX78‘

四、分组

  ( ):分组,使量词作用于分组  如:‘a1b2c3d4‘.replace(/([a-z]\d){3}/g,‘X‘);---->‘Xd4‘

  

  

 

 

  

正则表达式

标签:结束   贪婪模式   包括   等价   xxx   划线   一个   常用   定义类   

原文地址:http://www.cnblogs.com/ytwanzi/p/7340914.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!