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

    目录

      1.正则表达式常用函数

      2.正则表达式基本语法

      3.模式修正

      4.实用表达式

    1.正则表达式常用函数

    //preg_math($parrten,$subject,array)
        #只会匹配一次。返回结果只为0或1, 匹配的数据放入一维数组。
    //pre_math_all();
        #全部匹配。返回结果0,1,2. ...,匹配的数据放入二维数组。
    
    //preg_replace($pattern,$replacement,$subject);
    //preg_filter($pattern,$replacement,$subject);
        #$replacement 将匹配到的值替换为这个变量中存放的值
    
    //preg_grep($pattern,array $input)
        #类似于模糊查询函数(只匹配,不替换),将相匹配的值返回到新的数组中,旧数组不匹配的值则过滤掉不匹配
    
    //preg_split($pattern,$subject)
        #匹配到后分割成数组输出
    
    //preg_quote($str)
        #正则运算符转义
        #正则表达式中有这些运算符 .+*?[^]$(){}=!<>|:-

    2.正则表达式基本语法

    //界定符:正则表达式的开始和结束
        #  /...../ php常用
        #  #.....# php常用
        #  {.....} php不常用
    
    //不可见原子
        # 换行符:
    
        # 回车:
    
        # 制表符:	
    
    //元字符
        #    | 匹配两个或多个分支选择
        #    [ ] 匹配方括号中任意一个原子
        #    [^]匹配不再方括号中的任意字符
    
    //原子集合
        #    .匹配除换行符之外的任意字符。
        #    d 匹配任意一个十进制数字
        #    D 匹配任意一个非十进制数字
        #    s 匹配一个不可见原子
        #    S匹配一个可见原子
        #    w 匹配任意一个数字、字母或者下划线
        #    W 匹配任意一个非数字、字母或者下划线
    
    //量词
        #    {n}    表示其前面的原子恰好出现n次。
        #    {n,}    表示其前面的原子最少出现n次。
        #    {n,m}    表示其前面的原子最少出现n次,最多出现m次。
        #    *    匹配0次,1次,或者多次其之前的原子,即{0,}。
        #    +    匹配1次,或者多次其之前的原子,即{1,}。
        #    ?    匹配0次,1次,或者1次其之前的原子,即{0,1}。
    
    //边界控制
        #    ^ 匹配字符串开始的位置 
        #    $ 匹配字符串结尾的位置

    3.模式修正

    // 懒惰匹配模式
        #匹配结果越少越好
    $pattern = "/[a-zA-Z0-9]+/U"; 
    
    //贪婪匹配模式(默认)
        #匹配结果越多越好
    $pattern = "/[a-zA-Z0-9]+/U";
    
    //常用修正模式
        #    U- 懒惰匹配
        #    i - 忽略英文字母大小写
        #    x - 忽略空白
        #    s - 让元字符“.”匹配包括换行符在内的所有字符

    4.实用表达式

    //非空
    $pattern = "/.+/";
    
    //手机号
    $pattern = "/1[34578]d{9}/";
    
    //email
    $pattern = "/^w+(.w+)*@w+(.w+)+$/";
    
    //URL
    $pattern = "/^(https?://)?(w.)+[a-zA-Z]+$/";
  • 相关阅读:
    ----uni-app之解决底部按钮绝对定位后被软键盘推起的bug----
    ----uni-app之解决app手机键盘消失后页面往上滚的问题----
    mysql tips
    mysql 添加行号
    mysql中的几种join 及 full join问题
    Dcoker中启动mysql,并实现root远程访问
    DockerToolbox在Win7上的安装和设置
    Class.getResourceAsStream 和 ClassLoder.getResourceAsStream 的区别
    tomcat 启动异常 EOFException: Unexpected end of ZLIB input stream
    java异常处理-finally中使用return和throw语句
  • 原文地址:https://www.cnblogs.com/Ryan344453696/p/5213174.html