本文介绍了使用正则表达式替换自定义代码的 PHP 模板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用正则表达式将 {$game.name.fullname} 转换为 $game['name']['fullname'].

How can I convert {$game.name.fullname} to $game['name']['fullname'] using regex.

谢谢

推荐答案

这个经过测试的函数有你想要的(注释)正则表达式:

This tested function has the (commented) regex you want:

function process_data(&$text)
{
    $re = '/# Reformat a string.
        \{       # Opening delimiter.
        (\$\w+)  # $1: game.
        \.       # Parts separated by dot.
        (\w+)    # $2: name.
        \.       # Parts separated by dot.
        (\w+)    # $3: fullname.
        \}       # Closing delimiter.
        /ix';
    $text = preg_replace($re, "$1['$2']['$3']", $text);
    return $text;
}

这篇关于使用正则表达式替换自定义代码的 PHP 模板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-11 11:24