在不带数组和不带循环的情况下仅打印preg_match_all中组2的值,可以通过使用preg_replace_callback函数来实现。
preg_replace_callback函数可以接受一个回调函数作为参数,在每次匹配到组2的值时调用该回调函数进行处理。回调函数可以直接打印组2的值。
以下是一个示例代码:
<?php
$pattern = '/(pattern)(\d+)/';
$string = 'pattern123 pattern456 pattern789';
preg_replace_callback($pattern, function($matches) {
echo $matches[2] . "\n";
}, $string);
?>
在上述示例中,我们定义了一个正则表达式模式$pattern,用于匹配字符串中的"pattern"后面的数字。然后,我们使用preg_replace_callback函数,传入$pattern、一个匿名回调函数和待匹配的字符串$string作为参数。
在回调函数中,我们通过$matches参数获取到匹配到的结果数组。$matches[2]表示组2的值,我们直接打印出来。
运行上述代码,输出结果为:
123
456
789
这样就实现了在不带数组和不带循环的情况下仅打印preg_match_all中组2的值。
领取专属 10元无门槛券
手把手带您无忧上云