php的preg_match_all()匹配不到指定的字符串求解?
demo:
<code>$html='<div class="p-img"><a href="url"></a></div> <div class="p-img"><img src="/static/imghw/default1.png" data-src="xx" class="lazy" alt="php的preg_match_all()匹配不到指定的字符串求解?" ></div>'; preg_match_all('/<div class="p-img">(.*?)/', $html, $out); var_dump($out); <p>目标字符串$html,希望匹配</p> <div class="p-img">,发现最后输出的$out是一直是empty,如何才能正确的匹配所有的结果,求正则高手指点 <hr> <h3 id="找到答案之后的补充说明">找到答案之后的补充说明:</h3> <p>利用爬虫从网络上获取到的dom结构,里面有很多的空格和换行,如果想把目标html匹配出来,正则表达式后面需要添加模式修正符号</p> <pre class="brush:php;toolbar:false"><code>preg_match_all('/<div class="p-img">(.*?)/is', $html, $out); <p>/i 忽略大小写</p> <p>/s 将字符串视为单行,换行符作为普通字符;</p> <h2 id="回复内容">回复内容:</h2> <p>demo:</p> <pre class="brush:php;toolbar:false"><code>$html='<div class="p-img"><a href="url"></a></div> <div class="p-img"><img src="/static/imghw/default1.png" data-src="xx" class="lazy" alt="php的preg_match_all()匹配不到指定的字符串求解?" ></div>'; preg_match_all('/<div class="p-img">(.*?)/', $html, $out); var_dump($out); <p>目标字符串$html,希望匹配</p> <div class="p-img">,发现最后输出的$out是一直是empty,如何才能正确的匹配所有的结果,求正则高手指点 <hr> <h3 id="找到答案之后的补充说明">找到答案之后的补充说明:</h3> <p>利用爬虫从网络上获取到的dom结构,里面有很多的空格和换行,如果想把目标html匹配出来,正则表达式后面需要添加模式修正符号</p> <pre class="brush:php;toolbar:false"><code>preg_match_all('/<div class="p-img">(.*?)/is', $html, $out); <p>/i 忽略大小写</p> <p>/s 将字符串视为单行,换行符作为普通字符;</p> <p class="answer fmt" data-id="1020000007037958"> </p> <pre class="brush:php;toolbar:false"><code>$html='<div class="p-img"><a href="%5C'url%5C'"></a></div> <div class="p-img"><img src="%5C'xx%5C'" alt="php的preg_match_all()匹配不到指定的字符串求解?" ></div>'; preg_match_all('/<div>(.*?)/is', $html, $out); var_dump($out); <p>输出:</p> <pre class="brush:php;toolbar:false"><code>array(2) { [0]=> array(2) { [0]=> string(39) "<div class="p-img"><a href="url"></a></div>" [1]=> string(39) "<div class="p-img"><img src="xx" alt="php的preg_match_all()匹配不到指定的字符串求解?" ></div>" } [1]=> array(2) { [0]=> string(14) "<a href="url">" [1]=> string(14) "<img src="xx" alt="php的preg_match_all()匹配不到指定的字符串求解?" >" } }</a></code>
要我怎么说呢,你的 $html 里面的 \/
应该 /
,并且 '
没有转义为 \'
我运行通不过,你知道么,是你语法问题,还是正则的问题?
答案在$html定义哪里。
-号需要转义

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu

Visual Studio Code,也称为 VS Code,是一个免费的源代码编辑器 - 或集成开发环境 (IDE) - 可用于所有主要操作系统。 VS Code 拥有针对多种编程语言的大量扩展,可以轻松编写

CakePHP 是一个开源MVC 框架。它使开发、部署和维护应用程序变得更加容易。 CakePHP 有许多库可以减少大多数常见任务的过载。

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储
