一、ReExp下的方法
1.exec()方法返回的数组有两个属性,分别是input和index:
(1)input属性包含了整个被查找的字符串。
(2)index属性包含了整个被查找字符串中被匹配的子字符串的位置。
同时,正则表达式对象也有两个属性:
(1)lastIndex属性包含匹配中最后一个字符的下一个位置。
(2)sourse属性中包含正则表达式字符串。
例:
var str = "I am a good man";
var re = /w+/g;
var oArray;
while((oArray = re.exec(str)) != null){
document.write(oArayy.index + "-" + re.lastIndex + " " + oArray + "<br/>");
}
输出结果:
0-1 I
2-4 am
5-6 a
7-11 good
12- 15 man
2.test()
test()方法检查在字符串中是否存在一个匹配指定模式的字符串,存在,返回true,否则false。
如:
var str = "I am a good man";
var re = /w+/g;
if(re.test(str)){
document.write("匹配成功!");
}
二、String下的方法
1.match()
match()方法使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。
如:
var str = "I am a good man";
var re = /w+/g;
var oArray = str.match(re);
document.write(oArray);
结果:
I,am,a,good,man
2.replace()
replace()方法根据正则表达式进行文字替换,然后返回替换后的字符串的副本。
如:
var str = "I am a good man";
var re = /^a/g;
str.replace(re,"-");
document.write(str);
结果:
I -m - good m-n
3.search()
search()方法指明是否存在相应的匹配。如果找到匹配,返回这个匹配距离字符串开始的索引位置,否则返回-1.
var str = "I am a good man";
var re = /^a/g;
var index = str.search(re);
document.write(index);
结果
2
4.split()
split()方法将一个字符串分割为字符串,然后将结果作为字符串数组返回。
如
var str = "I am a good man";
var re = /s/g;
var oString = str.split(re,3);
document.write(oString);
结果:
I,am,a