正则表达式

来源:互联网 发布:hr抢购软件 编辑:程序博客网 时间:2024/06/14 05:52

笔记
一:正则表达式语法:
a:限定符:
[0-9]:表示0到9之间的数字
[a-z]:表示a到z之间的字母
[A-Z]:表示A到Z之间的字母
一些特殊的限定符
\w:表示的字母或者数字
\s:表示空格
.:表示任意字符
b:限定次数:
{m,n}:出现的次数在m到n之间(包含m,n)
{m}:出现m次
{m,}:表示出现的次数是m以上(包含m)
一些特定的表示次数的符号:
+:表示出现1到多次
?:表示出现0或者1次
*:表示出现任意次数(包括0次)
二:在js定义正则表达式
a:定义方式
var regl=/[a]{1,}/;
b:通过对象定义
var reg2=new RegExp(“[d]{3,}”);
js处理正则表达式的方法
1:exec()方法
提取目标数据中符合正则表达式的数据,如果没有,就返回null
2:test()方法
判断目标数据中是否符合正则表达式的要求,符合正则表达式的数据要求,符合返回true
三:补充正则表达式
1)对数据全部匹配/^//[09]6/
2)运算符
|:选择
^:放在限定符里表示的是非运算 邮箱验证 var str=/^\w{1,}@\w{1}.(com|cn|com.cn)$/;
3)正则表达式的替换作用
四: 处理空字符串
var str=/\s{1,}/;
while(str.test(getvalue)) {
getvalue = getvalue.replace(str, “”);
}
if(getvalue.length==0){
alert(“输入的数据为空”);
}
else{
alert(“数据不为空”)

                }

五:级联下拉框

<title>级联下拉框</title>    <script>        var defaultoption="";//获取默认选项的值        window.onload=function(){            defaultoption=document.form1.select2.options[0].innerHTML;        }        function  changit(){            //alert("test");           //首先获取option选项的值            //alert(document.form1.select1.value);            var getvalue=document.form1.select1.value;            //清空第二个下拉列表框的所有的内容            document.form1.select2.options.length=0;            switch(getvalue){                case "0":                        //首先创建一个option元素                        var selectoption=document.createElement("option");                        selectoption.innerHTML=defaultoption;                        document.form1.select2.appendChild(selectoption);                    break;                case "1":                        var citys=new Array("广陵区","邗江区","维扬区");                        for(var i=0;i<citys.length;i++){                            var soption=document.createElement("option");                            soption.innerHTML=citys[i];                            document.form1.select2.appendChild(soption);                        }                    break;                case "2":                    var citys2=new Array("鼓楼区","秦淮区","江宁区");                    for(var i=0;i<citys2.length;i++) {                        var soption2 = document.createElement("option");                        soption2.innerHTML = citys2[i];                        document.form1.select2.appendChild(soption2);                    }                    break;                default:                    break;            }        }    </script></head><body>    <form name="form1">        你所在的省份:        <select onchange="changit()" name="select1">            <option value="0">--选择所在的省份--</option>            <option value="1">扬州</option>            <option value="2">南京</option>        </select>        <select name="select2">            <option>--选择所在的区市--</option>        </select>    </form></body>

六:图片的放大缩小

<title>图片的操作</title>    <script>        function changeImg(){            var imgdom=document.getElementById("myimg");            imgdom.setAttribute("src","image/002.jpg")        }        //初始化高度宽度        var width = 0;        var height = 0;        var mydom="";        //页面加载完毕后才会执行onload        window.onload=function() {            mydom=document.getElementById("img1");            width=mydom.clientWidth;            height=mydom.clientHeight;        }        function changBig(){            width=width+10;            height=height+10;            mydom.style.width=width+"px";            mydom.style.height=height+"px";        }        function shangSmall(){            width=width-20;            height=height-20;            mydom.style.width=width+"px";            mydom.style.height=height+"px";        }    </script></head><body>    <!--点击更换图片-->   <!-- 图片:<img src="image/001.jpg" id="myimg" onclick="changeImg()" />-->    <!--图片的放大缩小-->    <input type="button" value="放大" onclick="changBig()">    <input type="button" value="缩小" onclick="shangSmall()">    <img id="img1" src="image/001.jpg"/></body>

七:验证输入不为空

<title>验证不能为空</title>    <script>        function subit(){           // var inputname=document.form1.txtname.value;            var inputname=document.getElementById("name");            alert(inputname.value);            if(inputname.value==""){                document.getElementById("sp1").innerHTML="<font color='red'>*用户名不能为空</font>"            }else{                document.getElementById("sp1").innerHTML="";            }        }    </script></head><body>    <form name="form1">        username:<input id="name" type="text" name="name" placeholder="name"/><span id="sp1"></span><br>        password:<input type="password" name="password"><br>        <input type="button" onclick="subit()" value="提交">    </form></body>

八:判断邮编

    <title>邮编</title><script>    var str="3456787";    var p1=/^[0-9]{6}$/;    if(p1.test(str)){        alert("符合邮编");    }    else{        alert("不符合");    }</script>

九:处理含有空格的字符串

<title>Title</title>    <script>        function checkit(){            var getvalue=document.form1.textname.value;            //通过正则表达式去替换匹配的数据            var str=/\s{1,}/;            while(str.test(getvalue)) {                getvalue = getvalue.replace(str, "");            }            if(getvalue.length==0){                alert("输入的数据为空");            }            else{                alert("数据不为空")            }        }    </script></head><body>    <form name="form1">    username:<input type="text" value="" name="textname">        <input type="button" onclick="checkit()" value="login">    </form></body>

十:验证数字或者下划线开头

 <title>数字或者下划线开头</title>    <script>        var str="_abc";        //字母或者下划线出现一次,任意字符出现一次以上        var p1=/^[a-zA-Z|_]{1}.{1,}$/;        if(p1.test()){            alert("符合要求");        }        else{            alert("不符合");        }    </script>
原创粉丝点击