zoukankan      html  css  js  c++  java
  • js的正则表达式

    问题1:

    问题2:比如验证电子邮件,身份证,是不是数...

    解决之道

    js设计者给我们提供了一个新的技术--正则表达式(RegExp对象) regular expression.

    在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。

    正则表达式是很多语言都支持的。

    基本概念:一个正则表达式,就是用某种模式去匹配一类字符串的一个公式,反映到js中就是一个RegExp对象。

     快速入门案例:

    给你一个字符串,找出连续四个数字的字符段

    创建正则表达式有两种方式:隐式和显式。

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    
    </head>
    <body>
    <textarea id="content" rows="10" cols="20"></textarea>
    <input type="button" onclick="test1()" value="测试"/>
    </body>
    <script language="javascript" type="text/javascript">
    <!--
        //又犯了老错误,将js代码写在前面了。
        function test1(){
            //得到用户的内容
            //window.alert(content);
            var con=content.innerText;
            var myReg=/(d){4}/gi;
            //window.alert(content.innerText);
            while(res=myReg.exec(con)){
                window.alert("找到"+res);
            }
        }
    //-->
    </script>
    </html>

    上述代码在IE浏览器中运行有效,在谷歌浏览器中无效(没有报错)。

    exec()方法

    返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为null.

    匹配的结果是一个数组。

    第0个元素是匹配到的文本,第1个元素是与RegExpObject的第1个子表达式匹配的文本(我猜测是最后一个匹配文本的最后一个字符),第2个元素是与RegExpObject的第2个子表达式匹配的文本(如果有的话),依次内推。

    小结:

    1.创建一个RegExp对象有两种方法

    (1)隐式创建: var reg=/正则表达式规范/gi;[g表示全局匹配,i表示区分大小写]

    g--global,它声明了给定的正则表达式是否执行全局匹配;

     i--ignoreCae,是否执行区分大小写匹配。

    (2)显示创建: var reg=new RegExp(正则表达式,"gi");

    var myReg=new RegExp("(\d){4}","gi");
  • 相关阅读:
    Activity的活动Menu和上下文Menu使用示例
    drawable之scale and rotate代码示例
    密度无关和缩放比例无关定义
    [前端优化]使用Combres合并对js、css文件的请求
    不同版本的SQL Server之间数据导出导入的方法及性能比较
    SqlBulkCopy加了事务真的会变快吗?
    ASP.NET Web Forms 4.5的新特性(二):针对HTML5的更新和Unobtrusive Validation
    MVC3缓存之一:使用页面缓存
    MVC3缓存之三:MVC3中的局部缓存(Partial Page)
    ASP.NET Web Forms 4.5的新特性(三):Model Binding
  • 原文地址:https://www.cnblogs.com/liaoxiaolao/p/9806858.html
Copyright © 2011-2022 走看看