我有以下代码:
$re = '#((<\\w+(.*?)>)(.*?)(<?.*?>)?\\n?)*#m';
$str = '<blockquote>Morbi pulvinar turpis vitae neque convallis mattis ac at eros. Etiam interdum ornare ipsum at efficitur. Nulla sit amet magna felis. Morbi sit amet orci eros. Aenean ac risus tellus. Nam convallis ligula id interdum porta.</blockquote>
<img class=" alignnone" src="http:" alt="" />
<img class=" alignnone" src="http:" alt="" />
<img class=" alignnone" src="http:" alt="" />Sed faucibus ante sed orci rhoncus, non porta erat tempus. Donec sit amet diam at felis accumsan pharetra nec eget ipsum. Curabitur in elit porttitor risus facilisis luctus elementum ut neque. Ut placerat diam magna, ac eleifend quam sodales eget. Praesent dapibus, erat at rhoncus luctus, leo eros feugiat dolor, in egestas velit quam et lacus. Morbi pulvinar turpis vitae neque convallis mattis ac at eros. Etiam interdum ornare ipsum at efficitur. Nulla sit amet magna felis. Morbi sit amet orci eros. Aenean ac risus tellus. Nam convallis ligula id interdum porta.
<blockquote>Morbi pulvinar turpis vitae neque convallis mattis ac at eros. Etiam interdum ornare ipsum at efficitur. Nulla sit amet magna felis. Morbi sit amet orci eros. Aenean ac risus tellus. Nam convallis ligula id interdum porta.</blockquote>
<img class=" alignnone" src="http:" alt="" />';
preg_match($re, $str, $matches);
我想从第一个<blockquote>
抓取一个字符串匹配,直到句子开头之前的第三个图像标记的结尾。
当我在这里测试RegEx https://regex101.com/r/rA2fY9/1时,它会拉出正确的字符串。但是当我在我的localhost上测试它时,$matches[0]
会拉错字符串。
我做错了什么?提前谢谢!