【发布时间】:2021-02-13 16:58:01
【问题描述】:
我有以下代码:
$f = 'IMG_1474.PNG';
preg_replace('/(.*)([.][^.]+$)/', '$1' . time() . '$2', $f)
应该拆分 IMG_1474 和 .PNG 并在其间添加纪元。不过,第一个捕获组似乎是空的。
如果使用preg_match,我可以看到第一个捕获组不为空(因此 regex 在 PHP 中的执行与 regex101 相同)。
preg_match('/(.*)([.][^.]+$)/', $f, $match);
print_r($match);
功能演示:https://3v4l.org/VgDWJ(604147502 是time() 结果)
我的假设是替换位上的连接发生了一些事情。
【问题讨论】:
标签: php regex preg-replace capture-group