动态地将变量值分配给Regex捕获的字符串

时间:2016-01-19 07:49:07

标签: regex powershell templating

我试图用PowerShell与一个简单的模板功能拼凑起来。

所以我从文件或数据库中获取此文本

$text = "Dear [PERSON], you have been chosen for a special award my the Management of [COMPANY]"
$PERSON = 'Ahmadu Samuel'
$COMPANY = 'SuperGlobal Limited'

我正在尝试使用第二个捕获括号(检索' PERSON'),然后Get-Variable来检索变量$PERSON的值,如下所示:

$content = $txt -replace '([\{\[](\w+)[\}\]])', (gv '$2').value

现在,(gv 'PERSON').Value正确生成Ahmadu Samuel。但有了上述内容,我收到如下错误:

gv : Cannot find a variable with the name '$2'

不应该(gv '$2').Value这样做吗?如果没有,我如何操作此表达式以动态地将变量值分配给此捕获的字符串?

0 个答案:

没有答案