gpt4 book ai didi

php - 跨多个文件替换输入标签的值

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:03:59 26 4
gpt4 key购买 nike

我的 smarty 模板文件中有很多这样的字段。

{$email} (this can be anything like -- {$description}, {$variable_name}

我想用 {$email|escape:htmlall} 或 {$variable_name}

替换它

我如何在 Linux 中做到这一点?我在 sed 中编写正则表达式时遇到困难。

最佳答案

尝试:

sed 's/{\(\$[^}\|]*\)}/{\1|escape:htmlall}/g'

作为测试,使用:

echo 'blabla {$email} blieblie {$name} bloebloe ${alreadydone|escape:htmlall}'|sed 's/{\(\$[^}\|]*\)}/{\1|escape:htmlall}/gi'

这个正则表达式的作用:

  • 它用 {$|escape:htmlall} 替换任何字符串,如 {$}
  • 它还确保分开处理两个连续的字段(如示例中所示)。这是通过要求不出现 '}' 来完成的(这是由 [^}\|]* 部分完成的,这意味着:一系列零个或多个字符,除了 '}' 和 ' |'(见下文)。
  • 它会忽略任何已经被转义的标签(通过忽略任何在大括号内有 | 的标签)。

关于php - 跨多个文件替换输入标签的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16101690/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com