php学习之每天三个函数-第十六天
时间:2020-05-28
本文章向大家介绍php学习之每天三个函数-第十六天,主要包括php学习之每天三个函数-第十六天使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
preg_match 执行一个全局正则表达式匹配
参数一: 要搜索的模式,字符串形式
参数二:被搜索的内容
参数三: 作为输出参数输出所有匹配结果, 数组排序通过flags指定。
参数四: 可以结合下面标记使用(注意不能同时使用PREG_PATTERN_ORDER和 PREG_SET_ORDER):/*
/*- PREG_PATTERN_ORDER: 结果排序为$matches[0]保存完整模式的所有匹配, $matches[1] 保存第一个子组的所有匹配,以此类推。
- PREG_SET_ORDER: 结果排序为$matches[0]包含第一次匹配得到的所有匹配(包含子组), $matches[1]是包含第二次匹配到的所有匹配(包含子组)的数组,以此类推。
- PREG_OFFSET_CAPTURE: 如果这个标记被传递,每个发现的匹配返回时会增加它相对目标字符串的偏移量。*/
参数四: 查找时从目标字符串的开始位置开始。可选参数offset用于 从目标字符串中指定位置开始搜索(单位是字节)。
$body = "phpjavascphp";
preg_match("/php/",$body,$data);
var_dump($data);
/**
* 输入内容
* array(1) {
[0]=>
string(3) "php"
}
*/
preg_match_all 执行一个全局正则表达式匹配。
在匹配到第一个内容后,会继续从最后一次匹配的位置接着匹配下去
参数一: 要搜索的模式,字符串形式
参数二:被搜索的内容
参数三: 作为输出参数输出所有匹配结果, 数组排序通过flags指定。
参数四: 可以结合下面标记使用(注意不能同时使用PREG_PATTERN_ORDER和 PREG_SET_ORDER):
- PREG_PATTERN_ORDER: 结果排序为$matches[0]保存完整模式的所有匹配, $matches[1] 保存第一个子组的所有匹配,以此类推。
- PREG_SET_ORDER: 结果排序为$matches[0]包含第一次匹配得到的所有匹配(包含子组), $matches[1]是包含第二次匹配到的所有匹配(包含子组)的数组,以此类推。
- PREG_OFFSET_CAPTURE: 如果这个标记被传递,每个发现的匹配返回时会增加它相对目标字符串的偏移量。
参数四: 查找时从目标字符串的开始位置开始。可选参数offset用于 从目标字符串中指定位置开始搜索(单位是字节)。
$body = "phpjavascphp";
preg_match_all("/.?php.?/",$body,$data);
var_dump($data);
/**
* 输入内容
* array(1) {
[0]=>
array(2) {
[0]=>
string(4) "phpj"
[1]=>
string(4) "cphp"
}
}
*/
preg_replace 执行一个正则表达式的搜索和替换。
参数一: 要匹配的正则,字符串形式
参数二: 用于替换的字符串或字符串数组
参数三: 要搜索替换的目标字符串或字符串数组。
参数四: 可选,对于每个模式用于每个 subject 字符串的最大可替换次数。 默认是-1(无限制)
参数五: 可选,为替换执行的次数。
$body = "php是scphp";
$pattern = "/php/";
$rep = "java";
var_dump(preg_replace($pattern,$rep,$body));
/**
* 输出内容:
* string(13) "java是scjava"
*/
原文地址:https://www.cnblogs.com/death-satan/p/12981130.html
- 添加sqljdbc4的maven依赖
- MyBatis 实现关联表查询
- 数据结构 | 栈
- mybatis 针对SQL Server 的 主键id生成策略
- 算法 | 排序算法图形化比较:快速排序、插入排序、选择排序、冒泡排序
- WCF 添加 RESTful 支持,适用于 IIS、Winform、cmd 宿主
- 在CentOS 7上安装Nginx服务器
- 卷积神经网络 | 深度学习笔记1
- 【直播】我的基因组65:看看哪些基因的突变较多,哪些较少
- angular之interceptors拦截器
- js list数据 转 树状 层级 JSON,递归生成树状 层级 JSON
- jquery 图片文件转base64 显示
- AngularJS 用 $http.jsonp 跨域SyntaxError问题
- 简单的java socket 示例
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 使用Topshelf部署Windows服务
- IIS进程回收后第一次访问慢的问题
- k8s中服务添加hosts及一键转换脚本
- 【一起学系列】之状态模式:你听过“流程”模式吗?
- 【一起学系列】之代理模式:是为了控制访问啊!
- 【一起学系列】之剩下的设计模式们
- 如何使用k3OS和Argo进行自动化边缘部署?
- 设计模式总篇:从为什么需要原则到实际落地(附知识图谱)
- 一文入门DNS?从访问GitHub开始
- 没内鬼,来点干货!SQL优化和诊断
- 好像很厉害的生成器!一秒钟搞定一个项目
- 【一起学系列】之策略模式:好多鸭子啊
- 没内鬼,来点干货!volatile和synchronized
- 【一起学系列】之观察者模式:我没有在监控你啊
- Celery 4 初体验及踩坑