PHP:正则表达式在大括号之间提取任何东西

时间:2018-02-25 12:04:15

标签: php

我想用{{ }}之间的任何内容替换它的PHP date()等价物。所以,例如:

$path = '/some/path/{{m.d.Y}}.txt'

将是:

$path = '/some/path/02.25.2018.txt'

我怎么能这样做,假设我需要使用正则表达式?

1 个答案:

答案 0 :(得分:1)

您可以使用preg_replace_callback()

$path = '/some/path/{{m.d.Y}}.txt' ;
$path = preg_replace_callback('~({{[\w.]+}})~', function($matches) {
    return date(trim($matches[0],'{}'));
}, $path);

echo $path ; // /some/path/02.25.2018.txt