zoukankan      html  css  js  c++  java
  • PHP常用正则

    PHP常用正则

    1、匹配中英文

    //匹配中文,匹配四个
    preg_match_all('/^[x{4E00}-x{9FA5}]{1,4}/u', $getpost['name'], $matches, PREG_SET_ORDER, 0)
    
    //匹配英文:
    preg_match('/^[a-zA-Z|[:blank:]]{1,20}/is', $getpost['name'], $matches, PREG_OFFSET_CAPTURE, 0) 
        
    

    解释下一些正则修饰符

    i 不区分(ignore)大小写;
    例如:

    /abc/i 可以匹配 abc、aBC、Abc
    

    g 全局(global)匹配
    如果不带g,正则过程中字符串从左到右匹配,找到第一个符合条件的即匹配成功,返回
    如果带g,则字符串从左到右,找到每个符合条件的都记录下来,知道字符串结尾位置
    例如:

    var str = 'aaaaaaaa'
    var reg1 = /a/;  str.match(reg1)  // 结果为:["a", index: 0, input: "aaaaaaaa"]
    var reg2 = /a/g; str.match(reg2)  // 结果为:["a", "a", "a", "a", "a", "a", "a", "a"]
    

    m 多(more)行匹配
    若存在换行 并且有开始^或结束$符的情况下,和g一起使用实现全局匹配,
    因为存在换行时默认会把换行符作为一个字符任务匹配字符串是个单行,
    g只匹配第一行,添加m之后实现多行,每个换行符之后就是开始

    var str = "abcggab
    abcoab";
    var preg1 = /^abc/gm;  str.match(preg1)  // 结果为:["abc", "abc"]
    var preg2 = /ab$/gm;   str.match(preg2)  // 结果为:["ab", "ab"]
    

    s 特殊字符圆点 . 中包含换行符
    默认的圆点 . 是 匹配除换行符 之外的任何单字符,加上s之后, . 中包含换行符

    $str = "abggab
    acbs";
    $preg = "/b./s";
    preg_match_all($preg, $str,$matchs);
    print_r($matchs);//Array ( [0] => Array ( [0] => bg [1] => b [2] => bs ) ) 
    

    正则表达式网站

  • 相关阅读:
    ansible-palybook剧本
    ansible服务的部署与使用
    keepalived实现nginx高可用
    Linux下通过uptime判断负载情况
    2个无线路由器怎么连接
    Delphi FastReport动态加载图片 (转载)
    SQLite 日期 & 时间
    SuperObject使用
    php int 与 datetime 转换
    sqlserver 2005/2008 导入超大sql文件
  • 原文地址:https://www.cnblogs.com/roverliang/p/10474878.html
Copyright © 2011-2022 走看看