php - 预匹配检查是否在场
问题描述
我的 PHP 页面中有这段代码:
$regex = '/<img.*?>/';
我只需要preg_match
替换没有的图像class="nopopup"
什么是正确的正则表达式?
解决方案
我提出了一个避免复杂正则表达式的解决方案。相反,保留查找图像元素的简单正则表达式,并使用preg_replace_callback
. 对于每个匹配项,此函数将调用您定义的函数并将匹配项传递给它。然后,您使用一个简单的正则表达式来扫描字符串的匹配项class="nopopup"
。它在那里,执行替换。如果它不存在,您只需返回原始字符串。
推荐阅读
- python - Pandas - 用空值替换行并删除匹配两个条件的行
- reactjs - 如何测试可以将 html 元素的 ref 传递给它的反应钩子
- mysql - innodb 损坏的数据库 - 恢复事件和函数
- numpy - 什么样的 x 适合 argsort(x) == argsort(argsort(x))?
- c# - 在哪里放置需要实例化 GoogleMaps 地图的后台任务?
- python - 将外部参数转换为列表
- if-statement - 我需要一个单元格根据第三个单元格中的代码字从另一个数字中减去一个数字
- android - 如何在 iOS 上使用 Cordova 进行应用内购买 (IAP)?
- python - 长度为 n 的列表,其中 p 随机分配,否则为零
- node.js - 带有 if 和 else 语句的 forEach 循环