正则表达式声明有三种情况
1、通过new去声明正则表达式
第一个参数:正则表达式的主体:字符串
第二个参数:修饰符
i
g
【注】修饰符没有顺序
如:var box1 = new RegExp(“hello”,“ig”);
2、省略new运算符去声明正则表达式
如:var box1 = RegExp(“hello”,“ig”);
3、通过常量赋值
如:var box1 = /hello/gi;
输出
alert(box1);// hello/gi
正则表达式对象只有两个方法
test
格式:正则.test(字符串)
功能:在字符串中匹配这个正则是否存在
返回值:如果匹配成功返回true,匹配失败返回false
如: var str = “how are you”;
var box = /are/;
alert(box.test(str));//true
exec
格式:正则.exec(字符串)
功能:在字符串中匹配这个正则是否存在
返回值:返回匹配到的串,匹配成功,返回一个装有字符串的数组
匹配失败,返回null
如:var str = “how are you”;
var box = /are/;
alert(box.exec(str));//are
字符串的函数:
match()
格式:字符串.match(正则)
功能:在字符串匹配是否有符合正则表达式,
返回值:匹配成功,返回装有匹配到子串饭的数组
匹配失败,返回null
如:var str = “how are Are ARE you”;
var box = /are/ig;
alert(str.match(box));//are,Are,ARE
replace()
格式:字符串.replace(oldStr/正则,newStr);
功能:用newStr将oldStr替换,
返回值:替换成功的新字符串
如:var str = “how are Are ARE you”;
var newStr = str.replace("/are/ig","*");
alert(newStr);//how * * * you
split()
格式:字符串.split(分隔符/正则);
功能:用分隔符将原字符串进行分割
返回值:分割剩下的子串组成的数组
如:var str = “how are Are ARE you”;
var arr = str.split(/are/i);
alert(arr);//how , , , you
search()
格式:字符串.search(子串/正则)
功能:找到符合条件的子串第一次出现的位置
返回值:
如果找到,返回>=0的下标
否则,返回-1
如:var str = “how Are are ARE you”;
alert(str.search(/are/i));//4