6.2.10 正则表达式
检索字符串 用来规定文本搜索的内容
1. 正则: 对象 RegExp
-----------------创建正则表达式--------------------
1. 构造函数创建 new RegExp("检测的文本","修饰符")
i: 不区分大小写 g:全局
var str = "luffy 2018"
var reg = new RegExp("l","ig")
2. 字面量方式创建
var reg1 = /y/ig; //不区分大小写,全局匹配
y 是要检测的文本
---------------正则对象提供的检索方式-----------------
1. test() 检测字符串中是否包含定义字符模式, 返回布尔 是:true 否:false
要检索的字符在字符串str中存在true
console.log(reg1.test(str)); //true
2. exec() 方法就是用来检索字符串中正则表达式的匹配
如果匹配到了那么就返回一个存放在结果的数组,如果没有匹配到就返回一个Null
console.log(reg1.lastIndex); // 0 上面没有匹配,所以没有索引 保存一次匹配时开始的下标
console.log(reg1.exec(str)); // 匹配到,y 的index: 4
console.log(reg1.lastIndex); //5 上面匹配到index 4 ,所以lastIndex是5
-----------------常用的方式------------------
1. match 字符串.mastch(正则)
var str="hello world"
var reg = /o/g
使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回
console.log(str.match(reg)); // ["o","o"]
2. replace 替换 str.replace(被替换的,替换的)
console.log(str.replace(reg,"*"))
3. search()
console.log(str.search(reg)); //查询字符串在字符中出现的位置 下标
4. split 以匹配的规则分割
console.log(str.split(reg))