当前位置:网站首页>PHP笔记 28 29 30 31
PHP笔记 28 29 30 31
2022-08-10 07:24:00 【BvxiE】
理解正则表达式
描述一类字符串的特征,通过这个特征与特定的配合使用,对于其他的字符串进行匹配,查找,替换,分割操作!
了解一些基本概念:这类字符串的特征是由一个或多个
1.普通字符(例如a到z)
2.元字符(有特殊特殊功能的字符,比如*,+,?等),组成一个字符串!
例如‘/a/’,a就是普通字符,/是定界符(表示正则表达式的开始或结束)
preg_match_all
按指定的正则表达式,在给定的字符串进行搜索,匹配到符合特征的部分取出
<?php
$pattren='/test/';
$str='abc';
var_dump(preg_match_all($pattren,$str,$arr));
?>
这里是引用我们一般习惯使用正斜线“/”作为定界的字符,当然除了字母,数字,和反斜线(相当于转译,例如 \’ ->’ )以外的字符都可以作为定界符比如:#,!,(),| 都是可以的!
定界符放在正则表达式的起始位置,前后一致!
由图可见,没有符合此特征的!http://localhost//文件名
本地开开可进行搜索,比较麻烦。自行配置更方便
<?php
$pattren='/test/';
$str='testabtestctestfgrgtr';
var_dump(preg_match_all($pattren,$str,$arr));
var_dump($arr);
?>
preg_match
在第一次匹配过程中将会停止搜索
参数说明:
第一个参数:正则表达式
第二个参数:目标字符串
第三个参数:放一个变量,执行完成之后,里面会有匹配到的部分以及等等一些数据
第四个参数:可以传PREG_OFFSET_CAPTURE
具体可见PCPE
preg_replace
参考说明:
第一个参数:正则表达式
第二个参数:要替换成的字符串
第三个参数:目标字符串
第四个函数(可选):默认是-1,就是替换所有符合特征部分的
第五个参数(可选):可以放一个变量在这边
正则表达式元字符
详情可见https://www.runoob.com/regexp/regexp-metachar.html
课程中的配合使用
对于()进行理解
<?php
$pattren='/t(e)s(t)\\1/';//\\1代表第一个圆括号匹配的内容'/teste/'
$str='testet';
var_dump(preg_match_all($pattren,$str,$arr));
var_dump($arr);
?>
模式修正符
是正则表达式的定界符后使用的,可以调整正则表达式后的解释,扩展正则表达式在匹配,替换等操作时的某些功能,增强正则表达式的处理能力。
修正符m的使用条件:
1.目标字符串必须含\n,在字符串中出现\n就表示新的一行开始
2.正则表达式中必须出现^或者$
(了解一下!\r:回车符
,\n换行符
)
针对Linux系统
边栏推荐
- Unity3d famous project-Dark Tree translation
- PLSQL学习第三天
- order by injection and limit injection, and wide byte injection
- DGIOT 30 million meters set pressure reading
- 人工神经网络工作原理,神经网络的工作原理
- 基于ABP的AppUser对象扩展
- Bigder:42/100 showCase多少bug可以打回去
- Text-to-Image最新论文、代码汇总
- Regular backup of mysql database (retain backups for nearly 7 days)
- 全连接神经网络结构图,神经网络示意图怎么画
猜你喜欢
随机推荐
ATH10传感器读取温湿度
Nude speech - lying flat - brushing questions - big factory (several tips for Android interviews)
数据库公共字段自动填充
Tencent Cloud Song Xiang: Kubernetes cluster utilization improvement practice
The probability distribution and its application
卷积神经网络卷积层公式,卷积神经网络运算公式
DGIOT三千万电表集抄压测
ESP32 485风速
Basic use of Log4j2
力扣(LeetCode)221. 最大正方形(2022.08.09)
DGIOT支持工业设备租赁以及远程管控
90.(cesium之家)cesium高度监听事件
3. Transactions [mysql advanced]
时序动作定位 | ACGNet:弱监督时序动作定位的动作补充图网络(AAAI 2022)
30条实用MySQL优化法则
Fiddler(八) - 抓取手机APP的流量-插件Fiddler Orchestra Beta安装&配置
杭州公积金修改手机号信息
腾讯云宋翔:Kubernetes集群利用率提升实践
About MongoDb query Decimal128 to BigDecimal problem
mysql数据库定时备份(保留近7天的备份)