含了搜索到的所有整体匹配项。
(2)stringObj.replace(rgExp, replaceText)
返回一个字符串,即将stringObj中符合rgExp模式匹配的字符串替换成replaceText后返回。需要注意的是stringObj本身并不因为替换操作而改变。若期望stringObj中所有符合正则表达式模式的字符串被替换,则在建立正则表达式模式时要设定为全局模式。
(3)stringObj.search(rgExp)
返回第一个匹配到的子字符串的位置
符号名词解释:
位置:表示子字符串与目标字符串首字符的偏移
reExp:表示一个Regular Expression对象实例
stringObj:表示一个字符串对象
pattern:正则表达式模式
flags:匹配操作的模式标识
在实际web程序开发中我们可以有针对性的使用正则表达式来达到我们字符串处理的要求
如下附上四个使用正则表达式的JScript例程,这些例子主要用来熟悉正则表达式的使用。
1.email地址有效性检测
<script language=''JScript''>
function validateEmail(emailStr)
{
var re=/^[\w.-]+@([0-9a-z][\w-]+\.)+[a-z]{2,3}$/i;
//或 var re=new RegExp("^[\\w.-]+@([0-9a-z][\\w-]+\\.)+[a-z]{2,3}$","i");
if(re.test(emailStr))
{
alert("有效email地址!");
return true;
}
else
{
alert("无效email地址!");
return false;
}
}
</script>
2.字符串替换操作
<script language=''JScript''>
var r, pattern, re;
var s = "The rain in Spain falls mainly in the plain falls.";
pattern = /falls/ig;
re = s.replace(re,''falling'');
alert(''s = '' + s + ''\n'' + ''re = '' + re);
</script>
3.模式查找字符串
<script language=''JScript''>
var index, pattern;
var str = "four for fall fell fallen fallsing fall falls waterfalls ";
pattern = /\bfalls\b/i;
index = str.search(pattern);
alert(''The position of match is at '' + index);
</script>
3.正则表达式属性例程
<script language=''JScript''>
function matchAttrib()
{
var s='''';
var re = new RegExp("d(b+)(d)","ig");
var str = "cdbBbdbsbdbdz";
while((arr = re.exec(str))!=null)
{
s += "=======================================<br>";
s += "$1 returns: " + RegExp.$1 + "<br>";
s += "$2 returns: " + RegExp.$2 + "<br>";
s += "$3 returns: " + RegExp.$3 + "<br>";
s += "input returns : " + RegExp.input + "<br>";
s += "index returns : " + RegExp.index + "<br>";
s += "lastIndex returns : " + RegExp.lastIndex + "<br>";
s += "lastMatch returns: " + RegExp.lastMatch + "<br>";
s += "leftContext returns: " + RegExp.leftContext + "<br>";
s += "rightContext returns: " + RegExp.rightContext + "<br>";
s += "lastParen returns: " + RegExp.lastParen + "<br>";
s += "arr.index returns: " + arr.index + "<br>";
s += "arr.lastIndex returns: " + arr.lastIndex + "<br>";
s += "arr.input returns: " + arr.input + "<br>";
s += "re.lastIndex returns: " + re.lastIndex + "<br>";
s += "re.source returns: " + re.source + "<br>";
}
return(s); //Return results.
}
document.write(matchAttrib());
</script>