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]+$/";
原文地址:https://www.cnblogs.com/Ryan344453696/p/5213174.html