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

    一,什么是正则表达式?

    匹配字符串的一种规则。

    二,如何创建正则表达式?

    1,字面量的方式: /正则表达式/标志位,

    2,构造函数方式: new RegExp('正则表达式','标志位')

    三,正则表达式的方法?

    1 正则对象.test(字符串) : 用于测试字符串是否包含正则的内容,返回布尔值,常用于表单验证;

    2,正则对象.exec(字符串):返回伪数组,数组中的第一个元素是整个正则表达式匹配的内容,其他元素是组匹配的内容。

    三,字符串的方法

    1,字符串.match(正则表达式);返回伪数组,数组中的第一个元素是整个正则表达式匹配的内容,其他元素是组匹配的内容。

       区别:

      //1,无组无标志位的时候
                var re = /o/;
                var str = 'how do you do';
                console.log(re.exec(str));//['o']
                console.log(str.match(re));//["o"]
            //2,无组有标志位的时候
                var re = /o/g;//g表示匹配全局
                var str = 'how do you do';


                console.log(re.exec(str)); //['o']
                console.log(str.match(re));//['o','o','o','o']
            //3,有组无标志位g
                var re =/(.+)do(.+)/;
                var str ='how do you do';
                console.log(re.exec(str));//[ "how do you do", "how ", " you do" ]
                console.log(str.match(re));//[ "how do you do", "how ", " you do" ]
            //3有组有标志位g
                var re =/(.+)do(.+)/g;
                var str = 'how do you do';
                console.log(re.exec(str));//[ "how do you do", "how ", " you do" ]
                console.log(str.match(re));//[ "how do you do"]

    <2>replace()

    替换字符串前后空格

    3. search() 和indexOf()

     四,正则表达式的元字符有哪些?三三二三个一

    三: { }  () [ ]

    { }: 限制括号前的 一个或一组字符连续出现的次数;

    ():表示组;

        var re = /^(do){3,5}$/;
        var str = "dododo";
        console.log(re.test(str))

     [ ]:表示范围;

      

      三 *  +   ?

      * :相当于{0,}限制*前的一个或一组字符出现0至无限次;

     

    + :相当于{1,}限制+前的一个或一组字符出现1到无限次;

     

    ? :相当于{0,1}限制问号前的一个或一组字符出现0至1次;

     二 : ^  $

     ^ :1..用于表达式开头,表示顶头(限制开头字符)

      2. 用于[ ]的开头表示取反

    $ :只能用于正则表达式结尾,表示定尾(限制结尾字符)

     

    三个一

    . : 表示模糊匹配任意一个字符,

     | :表示或,

    : 转义字符,

     

       s : 表示空白,

      S:表示非空白;

      d:表示数字;[0-9]

      D表示非数字;[^0-9]

      w:表示字母,数字,下划线  [a-zA-Z0-9_],

       W : 表示非字母,数字,下划线  [^a-zA-Z0-9_],

       : 表示单词边界,
         B : 表示非边界

  • 相关阅读:
    pyqt5 动画学习(二) 改变控件颜色
    pyqt5 QGraphicsView颜色动画问题(不兼容,运行不了动画)
    selenium chrome浏览器与chrome.driver的对应关系
    使用tkinter加载png,jpg
    SVN是什么,svn的目录结构
    性能测试中用LambdaProbe监控Tomcat Tomcat和Probe的配置
    Mysql从客户端连接服务器连不上的问题
    已达到计算机的连接数最大值,无法再同此远程计算机连接”的解决办法
    解决远程桌面无法连接的问题
    查看端口是否被打开、占用、开放的有关命令。
  • 原文地址:https://www.cnblogs.com/huhuhuhuhuhu/p/10420534.html
Copyright © 2011-2022 走看看