gpt4 book ai didi

php正则表达式不返回匹配项

转载 作者:搜寻专家 更新时间:2023-10-31 20:50:24 24 4
gpt4 key购买 nike

我有一个非常简单的正则表达式设置。

preg_match('/[0-9]*/', $item, $id);

$item 的字符串值为“<li class="page_item page-item-29 current_page_item"><a href="http://dcdc.siretesting.com/programs/child-care/" title="Child Care">Child Care</a></li>

当我 print_r($id)我得到一个空数组 Array ( [0] => )

我使用 http://regexpal.com/ 进行了测试它会像我期望的那样选择。它突出了数字 29

我不明白为什么在 PHP 中它没有正确匹配。

最佳答案

您可能被您的模式误导了:

/[0-9]*/

* 表示您要匹配零个或多个字符。 preg_match 执行此操作,它成功找到字符类 [0-9] 的零并返回空字符串。

你可能是这个意思:

/[0-9]+/

+ 表示您想要匹配一个或多个。

Regexpal 会为您提供所有匹配项,而不仅仅是第一个。使用 preg_match_all 查看:Demo .

关于php正则表达式不返回匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8171872/

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