gpt4 book ai didi

php - preg_match() 似乎总是返回 0 个匹配项

转载 作者:行者123 更新时间:2023-12-02 17:51:10 25 4
gpt4 key购买 nike

我有以下模式和主题

$pattern = "\[item\s*id=['\"](.*?)['\"]\s*\]";
$subject = "[item id=\"40\"]";

基本上,我想从字符串 [item id="30"] 中获取 id 属性。

我已经在不同的 preg_match 上测试了我的模式和主题和 preg_match_all网站,它们都返回正确的匹配项。

但是,我编写的以下代码似乎总是为匹配项返回 NULL。

preg_match_all($pattern, $subject, $matches);
var_dump($matches);

怎么了?我该怎么做?

最佳答案

您缺少分隔符:

Warning: preg_match_all(): Delimiter must not be alphanumeric or backslash in /data/1.php on line 4 NULL

所以 $pattern 应该是这样的:

$pattern = "~\[item\s*id=['\"](.*?)['\"]\s*\]~";

它返回:

array(2) { [0]=> array(1) { [0]=> string(14) "[item id="40"]" } [1]=> array(1) { [0]=> string(2) "40" } }

关于php - preg_match() 似乎总是返回 0 个匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8111908/

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