4.6正则表达式

4.6.1正则表达式的创建

1.var varname=/regpattern/flags

flags有如下:

i:忽略大小写

g:全局匹配

m:多行匹配

2.var varname=new RegExp("regpattern"[,"igm"])

varname.test(myString)   //在myString中搜索varname代表的指定模式。

###################################################################

<script language="javascript">

var myString="精通脚本***";
var myregexp=new RegExp("***");
if(myregexp.test(myString)){
   alert("找到了指定模式。");
   }
else{
   alert("未找到指定模式。");
   }
</script>

###################################################################

varname.exec(myString)  //首先执行些处理

<script language="javascript">

var myString="aaa 111 bbb 222 ccc 111 222dddd";
var myregexp=/111/;
var array=myregexp.exec(myString);
if(array){
   var str="找到了匹配子串!"+"\n返回的数组的值为:"+array+"\n数组的元素个数为:"+array.length+"\n被搜索的字符串为:"+array.input+"\n匹配字符串的首字符为"+array.index+"\n匹配字符串后第一个字符串为:"+myregexp.lastIndex;
   alert(str);
   }
else{
   alert("未找到匹配字符串。");
   }
</script>

4.6.2正则表达式的字符串对象的常用方法

Match(regex)        在一个数组中返回与正则表达式regex相匹配的子串

Replace(regex,replacement)    将字符串中regex指示的子串替换为replacement

Search(regex)        查找正则表达式regex指示的模式在字符串中的开始位置

Split(regex)        使用正则表达式regex分割字符串,并将分割结果以数组形式返回

#########################################################################

<script language="javascript">

var myString="哈哈精通哈哈脚本哈哈***哈哈。";
var regex=/哈哈/g;
var newString=myString.replace(regex,"");
document.write(newString);
</script>