日期:2014-05-16  浏览次数:20419 次

JS正则表达式(3)--replace()方法的使用
var str = "give me some sunshine";
//alert(str.replace("sunshine","rain"));  //把sunshine替换成了rain,replace方法有两个参数,第一个为源参数,第二个为源参数替换的新值,结果返回give me some rain
match = /\s/;
//alert(str.replace(match,'%'));//结果返回give%me some sunshine,只能把第一个空格给换成%,因为一个正则表达式只能进行一次匹配
match =/\s/g;
//alert(str.replace(match,'%')); //这样这会把一个字符串中所有的空格都换成%,因为g是全局标志,使正则表达式匹配整个字符串
str = "give                     me some rain";
match =/\s+/g;
alert(str.replace(match,'*'));//返回结果是give*me*some*rain

//var str ="my-target-is-what";
//var arr = str.split("-");
//for(i =0;i<arr.length;i++){
//alert(arr[i]);
//}

str="my_target-is_what%!i_don't-know";
var match=/[^a-z]/g; //^表示字符开始,但在[]里它表示一个负字符集, 匹配任何不在指定范围内的任意字符,这里将匹配除字母处的所有字符
arr = str.split(match);
//for(i =0;i<arr.length;i++){
//alert(arr);
//}

str = "my age is 25.years old";
match=/\d+/;
//alert(str.search(match)); //返回的是2所在的下标数10,因为查找本身就是出现第一次就立即返回,所以无需在search时使用g标志
match=/\d+/g; //不出错,但g标志是多余的