gpt4 book ai didi

php - (。*) 代替 (。*?)

转载 作者:可可西里 更新时间:2023-11-01 12:24:15 25 4
gpt4 key购买 nike

假设我们有这个html内容,我们愿意用正则表达式得到Content1, Content2,..

<li>Content1</li>
<li>Content2</li>
<li>Content3</li>
<li>Content4</li>

如果我使用下面的行

preg_match_all('/<li>(.*)<\/li>/', $text, $result);

我将得到一个包含单行的数组:

Content1</li>
<li>Content2</li>
<li>Content3</li>
<li>Content4

并通过使用此代码:

preg_match_all('/<li>(.*?)<\/li>/', $text, $result);

我将得到一个包含 4 行的数组,其中包含 Content1、Content2、...

为什么 (.*) 不起作用,因为它意味着匹配任何字符零次或多次

最佳答案

*贪婪方式匹配,*?非贪婪方式匹配。

这意味着 .*将匹配尽可能多的 个字符,包括所有中间 </li><li>对,仅在最后一次出现 </li> 时停止.另一方面,.*?将尽可能匹配 几个 个字符,在第一次出现 </li> 时停止.

关于php - (。*) 代替 (。*?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2591905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com