gpt4 book ai didi

php - 用正则表达式匹配两个标签之间的所有内容?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:58:48 26 4
gpt4 key购买 nike

如何匹配 (PCRE) 两个标签之间的所有内容?

我试过这样的:

<!--\s*LoginStart\s*-->(.*)<!--\s*LoginEnd\s*-->

但对我来说效果不是很好..

我是正则表达式的新手,所以我希望有人能友好地向我解释我将如何实现这一点,如果它甚至可以使用正则表达式的话。

谢谢

最佳答案

$string = '<!-- LoginStart --><div id="stuff">text</div><!-- LoginEnds -->';
$regex = '#<!--\s*LoginStart\s*-->(.*?)<!--\s*LoginEnds\s*-->#s';

preg_match($regex, $string, $matches);

print_r($matches); // $matches[1] = <div id="stuff">text</div>

解释:

(.*?) = non greedy match (match the first <!-- LoginEnds --> it finds
s = modifier in $regex (end of the variable) allows multiline matches
such as '<!-- LoginStart -->stuff
more stuff
<!-- LoginEnds -->'

关于php - 用正则表达式匹配两个标签之间的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/287991/

26 4 0