JavaScript中的正则表达式对象1--创建

来源:互联网 发布:karunesh 知乎 编辑:程序博客网 时间:2024/05/16 17:49

正则表达式对象的两种创建方式

  1. 正则表达式直接量(/pattern/attributes)
  2. RegExp构造函数(new RegExp(pattern,attributes))
var r1 = /[a-z]+/g;var r2 = new RegExp("[a-z]+","g");var str = "444abcd23";console.log(str.match(r1));//print ["abcd"]console.log(str.match(r2));//also print ["abcd"]

可以看出直接量的格式是将正则表达式包含在两个斜杠中后面跟着属性值,其中属性有2个,g和i。
RegExp构造函数有两个参数,第一个是正则表达式字符串,第二个是属性字符串。
属性g的意思是全局匹配,看下面的例子,r1和r2的区别就在r1是全局匹配,所以r1匹配了所以的结果,而r2只匹配了第一结果。

var r1 = /[a-z]+/g;var r2 = /[a-z]+/;var str = "444abcd23efg333";console.log(str.match(r1));//print ["abcd", "efg"]console.log(str.match(r2));//print ["abcd"]

属性i的意思是或略大小写,看下面例子,r1或略了大小写所以匹配了被数字分割的字母组合,r2大小写敏感所以匹配了所有被数字和大写字母分割的小写字母组合。

var r1 = /[a-z]+/gi;var r2 = /[a-z]+/gvar str = "444abCd23efg333rrrEe";console.log(str.match(r1));//print ["abCd", "efg", "rrrEe"]console.log(str.match(r2));//print ["ab", "d", "efg", "rrr", "e"]
0 0
原创粉丝点击