// 声明一个正则对象,modifiers是修饰符 // var patt= new RegExp(pattern,modifiers); // 或者 // var patt2=/pattern/modefiers; console.log("修饰符"); // 1 修饰符 // i忽略大小写 g全局 m多行匹配 // i,g var str1='AbcAB'; var patt1=/ab/ig; // 返回的是一个数组 console.log("i->"+str1.match(patt1));//i->Ab,AB console.log("方括号"); // 方括号用于查找某个范围内的字符 var str2='abclll'; var patt2=/[a-d]/g; console.log("[]->"+str2.match(patt2));//[]->a,b,c //[^]不在这个范围内的 // 注意:和^[]不一样,^在外面的话是以它开头 var str3='abclll'; var patt3=/[^a-d]/g; console.log("[]->"+str3.match(patt3));//[]->a // [0-9] [a-z] [A-Z] [A-z] // [a|b|c]查找任何指定的选项 var str4='abclll'; var patt4=/[a|d]/g; console.log("[]->"+str4.match(patt4));//[]->l,l,l console.log(" 元字符"); var str4='abclll'; var patt4=/[a-d]./g; console.log(".->"+str4.match(patt4));//[]->ab,cl // \w单词字符 var patt5=/\w/g; console.log("\\w->"+str4.match(patt5)); // \d数字 \s空白字符 \b单词边界 // 以run开头或者结尾 var str6="Visit Runooob"; var patt6=/\bRun/g; console.log("\\b->"+str6.match(patt6)); // \0null字符,\n换行符 \f换页符 \r回车 \t制表 console.log("量词"); // n+匹配任何包含至少一个n的字符串 var str7='aasd34aaa5'; var patt7=/a+/gi; console.log("n+->"+str7.match(patt7));//n+->aa,aaa //n*匹配任何包含0个或多个n的字符串 //n?匹配任何包含0个或1个n的字符串 //n{x}匹配x个n的系列的字符串 // n{x.}前面的模式n连续出现至少x次时匹配 // n{x,y}前面的模式n连续出现至少x次,至多y次 // n$以n结尾 // ^n以n开头 // ?=n匹配任何其后紧接指定字符串n的字符串 // ?!n匹配任何其后没有紧接指定字符串 n 的字符串。 console.log("方法"); // test var str="Hello world!"; //查找"Hello" var patt=/Hello.w/g; var result=patt.test(str); console.log("test返回值: " + result); //true //查找 "Runoob" patt=/Runoob/g; result=patt.test(str); console.log("test返回值: " + result);//false // toString var patt9 = new RegExp("RUNOOB", "g"); var res = patt9.toString(); console.log("toString->"+res); // match方法,在字符中检索指定的值,或找到一个或多个正则表达式的匹配 // 如果pattern中没有g,则match方法只能执行一次匹配。 // 没有找到则返回null // 找到则返回一个数组 var str='AbcAB'; var patt1=/ab/ig; // 返回的是一个数组 console.log("match->"+str.match(patt1)); console.log("match->"+str.match(patt1)[1]); // search检索与正则表达式相匹配的值, var str10="Visit Runoob! Runoob"; var n=str10.search("Runoob"); console.log("search->"+n);//6 // n是索引,r开头的索引 // replace替换第一个 var str11="Visit Microsoft! Visit Microsoft!"; var n=str11.replace("Microsoft","Runoob"); console.log(n);//Visit Runoob! Visit Microsoft! // 替换所有,记住!!不要加双引号! var a=str11.replace(/Microsoft/g,"Runoob"); console.log(a);//Visit Runoob! Visit Runoob! // split() var str12="visit a bai jh"; var n=str12.split(/i./g); console.log(n);//[ 'v', '', ' a ba', 'jh' ]