# 正则表达式
https://tool.oschina.net/regex可以在这个网站测试
## PHP的边界符可以自定义 除了//之外可以自定义任何付号
```
\d匹配表示任何一个数字
\D匹配除了数字以为的任何字符
\w 匹配大写的A-Z与0-9包括下划线
\W 匹配除了(大写的A-Z与0-9包括下划线)这个些以外的。
\s 匹配任意空白空格
\S 匹配除了空格之外的
\n 匹配换行符
\t 匹配制表符
```
## ------------原子表--------
```
[abc] //其中只要有abc就能成功
^ 匹配除了 什么什么以外(反义符主要必须用到[]里才算,不然就是以什么什么开始了)
[abc] 匹配括号里的字符
[a-zA-Z] 匹配a-全部字符
[^a-z]匹配不是a-z的字母^非
preg_split()拆分函数
```
## ---------原子组-------
```
() 里面的字符必须一模一样才能匹配
^限定开始 $限定结尾
{n}匹配固定次数
{m,n} 限定次数
. 点可以匹配除换行以外的所有字符。
?尽可能匹配1次,也可也不匹配,相当于{0,1}
+ 尽可能多次匹配,至少匹配1次,相当于{1,}
* 尽可能多匹配,最少可以不匹配,相当于{0,}
```
##
## 其他常用的字符
```
使用 | 竖线 分割多段表达式,整个表达式可匹配其中任意一段
用括号进行分组() (可以分成好几种也就是与运算符&&一样)
转义 \
```
## 常用的几种匹配正则
```
匹配用户名长度6-12数字字母下划线:^\w{6,12}$
匹配手机号码 : ^1[3|4|5|6|7|8](\d{{9})$ ^1([3-9])([0-9]{9})$
匹配QQ号: ^[\d]{4,12}$
匹配email地址:\w+@\w+.com
匹配url地址: ^https?://\w+\.\w+\.[a=z]+$
```
## 正则表达式函数
```
preg_match('正则表达式'$要匹配的字符串, $结果) :返回布尔值如果匹配到返回真匹配不到返回假
```
`.+? 非贪婪匹配
`
## 代码案例:
~~~
<?php
$vr='2021-08-31 21:31:23 newfashion.vip 37 2021-07-29';
$bc=preg_match_all('/[\S]+/',$vr,$ys);
var_dump($ys); //相差5个
echo $ys[0][2];
~~~
# 替换字符串
~~~
preg_replace("/正则表达式/","被替换的内容","要替换的字符串");
~~~
- 变量删除查找与static静态变量
- 赋值原理
- global涵数引入全局变量使用
- 数据类型
- 数据类型判断is_
- PHP输出
- PHP指针(取址运算)
- PHP运算符
- 常量
- 字符串
- 字符串添加反斜杠函数addslashes($变量)
- htmlspecialchars()转字符实体
- int strcmp()判断2个字符串大小
- strstr() 查找字符串
- 字符串常用系统内置函数
- 控制流之if
- switch判断方法
- while循环
- for循环
- 跳出循环
- PHP文件引文入( include与require)
- PHP文件引入include_once与require_once
- 函数(函数各种应用以及约束方法)
- global 引入函数外的变量
- 函数的递归
- 数组(遍历方法)与( foreach()遍历方法)
- 数组函数
- PHP时间操作
- 常用数学内置函数
- 正则表达式
- PHP 九大超全局变量(内置的)
- 超全局变量$_SERVER的详细介绍
- PHP类
- 类的$this
- 类的构造方法__construct()
- 类的修饰符 public private protected
- 类的继承
- 类的多态(instanceof)方法
- 类的静态方法与常用关键字(final static self parent clone )
- 类的__set() __get() 方法
- 类的重载
- 类的__call()与__callstatic()方法
- 类的抽象类与方法
- 抽象类接口interface (实现子类继承多个抽象类)
- 类的trait (解决单继承的限制)
- 命名空间
- 类的魔术常量以及系统函数
- mysql数据库
- 数据库的概念
- SQL语句规范
- 数据库字段类型
- 字段是属性(创建数据库字段用)
- 数据库操作(增删改)
- 数据表与字段(DDL)(增删改)
- 数据的操作(DML)(增删改)
- 数据的查询数据(最重要最核心经常看)
- 数据库 字符集 引擎 校对等
- cookie创建使用与删除
- session创建使用与删除
- 在cookie禁止的情况下session的使用方法
- session的配置以及session与cookie的区别
- session实战登录
- PHP文件处理函数
- PHP打开读取写入文件
- file_get_contents GET请求接收
- PHP文件上传以及过大报错解决方案
- 验证并控制上传格式与大小
- 判断是否有目录(如果没有就创建目录)
- 上传文件到目录move_uploaded_file()
- 图片上传用class写法
- PDO链接数据库与exec()使用(只能用于增,删,改)
- PDO-推荐方法prepare() 增删改查
- 关于PDO类种事务使用
- 类的单例模式写法
- 自动加载autoload()
- composer安装与使用
- PHP操作XML
- PHP操作JSON
- curl GET与POST请求接收
- 自己封装的一些实用函数
- 微信公众号开发
- 常见问题以及解决
- PHP反序列化HTML
- try catch尝试执行与异常
- json 对象转字符串数组的方法可以在用json_e转数组