0

我正在使用PHP和正则表达式来查找:

preg_match_all('/\{\{include:[a-zA-Z0-9_]{25}\}\}/i', $content, $include_matches, PREG_PATTERN_ORDER);

根据 PHP 文档,$include_matches应该给我原始字符串,以及括号内的结果(PREG_PATTERN_ORDER 标志),正是我想要的。问题是结果是:

Array
(
    [0] => Array
        (
            [0] => {{include:rec_ih6tk504c23dfdf4a3qqK}}
        )
 )

我希望结果是:

Array
(
    [0] => Array
        (
            [0] => rec_ih6tk504c23dfdf4a3qqK
        )
 )

知道我做错了什么吗?谢谢。

4

1 回答 1

4

只需使用:

preg_match_all('/\{\{include:([a-zA-Z0-9_]{25})\}\}/', $content, $include_matches, PREG_PATTERN_ORDER);
$include_matches= $include_matches[1];

你必须插入一个捕获组

于 2012-09-17T05:46:49.007 回答