正则表达式

2017-03-19  本文已影响0人  尘满面鬓微霜
  • *通配符
  • ?0个或这没有
  • +1个或者多个
  • {n}几个
  • []或者
  • ()就是区域

js中正则表达式

标示符:g(全局替换),i(ignore,忽略大小写),m(多行搜索,当字符串有多行的时候)

var reg = \bis\b;
//这样,is是个单词,这种写法

正则表达式由两种基本字符类型组成:

字符:* + ? $ ^ . | \ () {} []

  • 原义文本字符
  • 元字符(有特殊含义的非字母字符,\b单词边界,\n...之类的)

常用类

用js写正则的时候,把正则表达式写在//里面:

  • 一般情况下,正则表达式一个字符对应字符串的一个字符。
  • 表达式ab\t的含义:"ab"+"tab键制表符"。
  • [],或者的意思,比如[abc],就是a或b或c。
  • 方向类。^,在[]里面才是取反的意思 ,[^abc],不是字符a或b或c的内容。
  • 范围类。[a-z],从字母a到字母z。可以连着写[a-zA-Z],忽略大小写字母。如果想匹配”-“,那么直接加在后面[a-z-]即可。
  • 预定义类。.:除了回车和换行之外的所有字符,\d:数字字符,\D:非数字字符,\s:空白符(换行、制表符等),\S:非空白符,\w:单词字符(字符、数字和下划线),\W:非单词字符
  • 边界。^:开始,$:结束,\b:单词边界,\B:非单词边界。
  • 量词。?:0次或者1次,*:0次或多次,+:一次或多次,{n}:n次,{n,m}:n到m此,{n,}:最少出现n次。
  • 贪婪模式和非贪婪模式。/\d{3,5}/,贪婪模式:贪婪模式。/\d{3,5}?/,非贪婪模式,非贪婪模式。
  • 分组。():分组,就是将小括号里面作为整体, |:或,反向引用:$n来取值,忽略分组:在分组内加问好(?:)
  • 前瞻。在匹配的时候要求后面一个是什么数据,比如/w(?=\d),单词的前面是个数字。
  • 对象属性。可以读取g,i,m等属性,ture或者false。
  • search,match,
上一篇 下一篇

猜你喜欢

热点阅读