• 正则表达式


    正则表达式:正则表达式是一种字符串搜索和匹配的工具。

    正则表达式对目标进行匹配,把符合条件的结果显示出来。

    pattern = 正则表达式  subject = 目标数据

    preg_match($pattern,$subject,$array);

        $array查询结果集 只匹配一次,匹配到之后return返回匹配次数


    preg_match_all($pattern,$subject,$array);

       $array查询结果集 只匹配全部,匹配到之后return返回匹配次数



    preg_replace($pattern,$replacement,$subject);

    preg_filter($pattern,$replacement,$subject);

     

    $replacement 要替换的字符串  替换规则和替换内容和目标数据都可为数组  

    preg_replace return会返回所有数据                                  

    preg_filter return只会返回替换过的数据  






    preg_grep($pattern,$subject)

    返回出符合匹配的结果



    preg_split($pattern,$subject)
      以表达式分割目标数据并返回数组
     

    preg_quote($subject )  

      给目标数据中的正则符号添加反斜线

      正则表达式特殊字符有: . + * ? [ ^ ] $ ( ) { } = ! < > | : -

    正则函数匹配环境

      preg_match 用于表单验证

      preg_replace 用于词语过滤

    正则表达式基本语法

     对汉字进行搜索的时候最好进行转换Unicode编码,因为有时候代码的编码不同会产生错误

     原子的筛选方式

      |  匹配两个或者多个分支

      []  匹配方括号中任意一个原子

      [^]  匹配除了方括号中的原子之外的任意字符

    元字符

      .   匹配换行符之外的任意字符

      d  匹配任意一个十进制数字 同 [0-9]

      D  匹配任意一个非十进制数字  同  [^0-9]

      s  匹配任意一个不可见原子  同  [f v] 

      S  匹配任意一个可见原子  同  [^f v]

      w  匹配任意一个数字、字母或下划线  同  [0-9a-zA-Z]

      W  匹配任意一个非数字、字母或下划线  同  [^0-9a-zA-Z] 

    量词

      {n}  表示前面的原子正好出现n次

      {n,}  表示前面的原子至少出现n次

      {n,m}  表示前面的原子至少出现n次,最多出现m次

      *  匹配0次、1次或者多次之前的原子  同  {0,}

      +  匹配1次或者多次其之前的原子  同  {1,}

      ?  匹配0次或者1次之前的原子  同  {0,1}

     边界控制

       ^  匹配字符串开始的位置

      $  匹配字符串结尾的位置

      ()  匹配其中的整体为一个原子

    贪婪匹配和懒惰匹配

    $pattern='/imooc.+123/U';
    
    $subject='I love imooc_123123123123132';
    
    $matches=array();
    
    preg_match($pattern, $subject,$matches);

    当$pattern 不在结尾+U的时候为贪婪模式  匹配结果为imooc_123123123123132

    当$pattern 在结尾+U的时候为懒惰模式  匹配结果为imooc_123

     修正模式

      U  懒惰匹配

      i  忽略英文字母大小写

      x  忽略正则表达式中的空白

      s  让元字符 ‘ . ’匹配包括换行符在内所有字符

      e  

    
    
  • 相关阅读:
    js使用sessionStorage、cookie保存token
    在vue项目中的main.js中直接使用element-ui中的Message 消息提示、MessageBox 弹框、Notification 通知
    git报错:'fatal:remote origin already exists'怎么处理、附上git常用操作以及说明
    Module build failed: TypeError: loaderContext.getResolve is not a function
    Git相关命令
    用户反馈录
    静雅斋数学[目录]
    探索|尝试编制高质量的跟踪训练试卷
    直线参数方程何时必须化为标准形式
    快速高效的做三角函数图像
  • 原文地址:https://www.cnblogs.com/1010wjf/p/7800381.html
Copyright © 2020-2023  润新知