您的位置:首页 > 其它

正则表达式基本用法B

2007-03-24 15:31 253 查看
String对象的方法:

match(rgExp):
使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。//
stringObj.match(rgExp)
参数//
stringObj
必选项。对其进行查找的 String 对象或字符串文字。

rgExp
必选项。为包含正则表达式模式和可用标志的正则表达式对象。也可以是包含正则表达式模式和可用标志的变量名或字符串文字。

如果 match 方法没有找到匹配,返回 null。如果找到匹配返回一个数组并且更新全局 RegExp 对象的属性以反映匹配结果。
match 方法返回的数组有三个属性:input、index 和 lastIndex。Input 属性包含整个的被查找字符串。Index 属性包含了在整个被查找字符串中匹配的子字符串的位置。LastIndex 属性包含了最后一次匹配中最后一个字符的下一个位置。
如果没有设置全局标志 (g),数组的 0 元素包含整个匹配,而第 1 到 n 元素包含了匹配中曾出现过的任一个子匹配。这相当于没有设置全局标志的 exec 方法。如果设置了全局标志,元素 0 到 n 中包含所有匹配。
应用如下:
<script language="javascript">
var strSrc="xxa1b01c001yya2b02c002zz";
var re=/a(/d)b(/d{2})c(/d{3})/gi;
var arr;
arr = strSrc.match(re);
for(var i=0;i<arr.length;i++)
{
if(i < arr.length-1)
document.write("[/"" + arr[i] + "/",");
else
document.write("/"" + arr[i] + "/"]");
}
</script>

search(rgExp)
返回与正则表达式查找内容匹配的第一个子字符串的位置。

stringObj.search(rgExp)
stringObj
必选项。要在其上进行查找的 String 对象或字符串文字。

rgExp
必选项。包含正则表达式模式和可用标志的正则表达式对象。

说明

search 方法指明是否存在相应的匹配。如果找到一个匹配,search 方法将返回一个整数值,指明这个匹配距离字符串开始的偏移位置。如果没有找到匹配,则返回 -1。

应用如下:
<html>
<head>
<title>search()方法</title>
</head>
<body bgcolor="lightgrey">
<h1>search()方法</h1>
<font size="+1">
<font face="宋体">
<script language = "JavaScript">
<!--
var myString="这是字符串对象search()方法的演示"
var regex = /对象/;
var index=myString.search(regex);
document.write("在字符串的第 "+index+ " 个字符位置找到匹配模式: "+ regex);
// -->
</script>
</body>
</html>
返回5

replace()方法
格式为stringObj.replace(reExp,replaceText)
它返回一个字符串包含的替换后的内容。replaceText可以使用静态属性。
应用如下:
<script language="javascript">
var strSrc="a12b34c56";
var re=/(/d)(/d)/gi;
var strDest=strSrc.replace(re, "$2$1");
alert(strSrc+"被转换为:"+strDest);
</script>
变成:a21b43c65

split()它返回一个数组。
split([separator[,limit]])
separator是分割标志符参数,也可以是一个正则表达式,它不作为数组的一部分。limit限制返回元素的个数。
<html>
<head><title>split()方法 </title></head>
<body>
<font size="+2">
<center>世界四大洋:<br><br>
<font size="+1">
<font face="宋体">
<script language = "JavaScript">
<!--
var splitArray = new Array();
var string="太平洋、大西洋、印度洋、北冰洋";
var regex = /、/;
splitArray=string.split(regex);
for(i=0; i < splitArray.length; i++){
document.write(splitArray[i] + "<br>");
}
// -->
</script>
</center>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: