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

    正则表达式由两种基本字符类型组成:

    •  原义文本字符,如:a 就代表字母 a
    •  元字符,在正则表达式中有特殊含义的非字母字符,如下:

    .   任意字符

    ^    开头

    d    数字

        字符边界

    ?    0个或者1个

    +    1个或者多个

    *    任意个

    {数字}  重复次数(或者说有“数字”个)

    ( )    分组(group)

    [ab]   a或者b

    $数字  匹配分组(group)

    $    结尾

        水平制表符

    v    垂直制表符

        换行符

        回车符

       (零) 空字符

    f    换页符

    cX   Ctrl+X (由此可知cZ等元字符的含义)

    JavaScript通过内置对象RegExp支持正则表达式:http://www.w3school.com.cn/jsref/jsref_obj_regexp.asp

      有两种方法实例化RegExp:

        1、字面量  var reg = /is/g ;      修饰符g代表gloab,全局匹配,不加g只会匹配第一个符合条件的字符串

        2、构造函数  var reg = new RegExp( '\bis\b' , 'g' )

        调用:  'this is a String'.relpace( reg , 'IS') ;

            reg.test('this is a String')    RegExp对象的test() 方法用于检测一个字符串是否匹配某个模式

      修饰符:

        g代表gloab,全局匹配,不加g只会匹配第一个符合条件的字符串

        i代表ignore case忽略大小写,默认大小写敏感

        m代表multiple lines多行搜索

     

    PHP中使用PCRE库函数进行正则匹配:

      preg_match属于PCRE库函数,用于执行一个正则匹配,常用来判断一类字符模式是否存在

      PCRE库函数中,正则匹配模式使用分隔符与元字符组成,分隔符可以是非数字、非反斜线、非空格的任意字符。经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~),例如:

    /foo bar/

    #^[^0-9]$#

    ~php~

      分隔符后面可以使用模式修饰符,模式修饰符(类似js的)包括:g,i, m, s, x等,例如使用i修饰符可以忽略大小写匹配:

    正则表达式图形化网站:https://regexper.com/

  • 相关阅读:
    插入排序法
    二分查找
    排序算法
    牛客网 猜数游戏
    决策树及随机森林(笔记)
    knn的缺陷及改进
    区块链、比特币简易PYTHON实现版笔记
    B树,B+树,以及它们和数据库索引之间的关系
    Balanced Binary Tree
    Advantages & Disadvantages of Recursion
  • 原文地址:https://www.cnblogs.com/yaohunzhanyue/p/7446101.html
Copyright © 2011-2022 走看看