正则表达式

模式修饰符的可选参数

参数
含义
i 不区分大小写
g 全局匹配
m 多行匹配
 
1、使用match方法获取匹配数组
    var Pattern=/box/ig;  
    var str='This is Box,That is a box';  
    alert(str.match(Pattern));  //匹配到两个box
    alert(str.match(Pattern).length); //获取数组的长度
2、使用search来查找匹配的数据 
    alert(str.search(Pattern)); //查找返回的位置,否则返回-1
 因为search方法查找即返回,也就是说无需g全局
3、使用sreplace来替换匹配的数据
    alert(str.replace(Pattern,'get')); //将box替换成get
4、使用split来拆分字符串数组 
    var Pattern=/box/ig;
    var str='This is Box,That is a box';
    alert(str.split(Pattern)); //将box拆分掉

    var Pattern=/ /ig;
    var str='This is Box,That is a box';
    alert(str.split(Pattern)); //空格拆开分组成数组

 

一、String对象的正则表达式

方法 含义
match(pattern) 返回pattern中的字符串或null
replace(pattern,replacement) 用replacement替换pattern
search(pattern)     返回字符串中的pattern开始位置
split(pattern) 返回字符串按指定pattern拆分的数组

使用静态属性:
    var Pattern=/good/i;
    var str='This is a good!';
    Pattern.test(str);  //必须执行以下,静态属性才有效
    alert(RegExp.input);   //当前被匹配的字符串
    alert(RegExp.leftContext);   //最后一次匹配前的字符串

----------
    var Pattern=/(g)ood/i;
    var str='This is a good!';
    Pattern.test(str);  //必须执行以下,静态属性才有效
    alert(RegExp.lastParen);   //最后一对圆括号内的匹配字符串,把圆括号内的(g)打印出来

 





<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<input type="text" id="txt"/>
<input type="text" id="txt1"/>
<input type="button" id="btn" value="验证"/>
</body>
</html>
<script>
    var btn=document.getElementById("btn");
    var txt1=document.getElementById("txt");
    var txt2=document.getElementById("txt1");
    //验证16-60的年龄
//    var arr=/^((1[6-9])|([2-5][0-9])|(60))$/;


    //验证手机号码
//   var arr=/^(^157[0-9]{8}$)|(^187[0-9]{8}$)$/;



    //验证邮箱
     var arr=/^(^([0-9]{8,10}@qq\.com)$|(^([A-Za-z]+))\@(|136|147)\.com)$$/;

    //验证座机
    //(0[0-9]{2,3}\-)区号,添加?代表可有可无
    //(\-\d{3,4}) 分机号,添加?代表可有可无
//    var arr=/^(0[0-9]{2,3}\-)?\d{7,8}(\-\d{3,4})?$/;

    //验证身份证号码
//    var arr=/^(513|511|622)([0-9]{12}|([0-9]{14}[A-Z0-9]))$/;
    btn.onclick=function(){
//        alert(arr.test(txt1.value));
       var w=arr.test(txt1.value);
        if(w){
            txt2.value=txt1.value;
        }else{
            txt2.value="输入错误,请重新输入"
        }
    }

</script>

 

  

posted @ 2015-09-13 14:33  淡紫色鍀薰衣草  阅读(165)  评论(0编辑  收藏  举报