gpt4 book ai didi

groovy - 如何避免评估 GString

转载 作者:行者123 更新时间:2023-12-01 11:57:15 25 4
gpt4 key购买 nike

我正在使用 groovy 扩展遗留脚本系统。源脚本是“类 java”的,因此它主要解析为带有少量预处理的 groovy 脚本。

我使用 invokeMethod() 和 missingMethod() 传递遗留代码,使我能够使用闭包和其他常规功能来增强脚本。但是,原始脚本使用“$foo”类型的字符串来引用变量。当 missingMethod() 捕获遗留方法时,我需要它不将此字符串评估为 GString,而只是逐字输出。这有可能吗?

最佳答案

有两种方法可以转义 $foo:

  • 将 '$' 转义为 '\$'
  • 使用 ' 而不是 "作为字符串分隔符

  • 例子:
     def test = "bad"
    def s0 = "$test"
    def s1 = "\$test"
    assert s1 != s0
    def s2 = '$test'
    assert s2 == s1
    println s0
    println s1
    println s2

    所以我想你必须使用你的预处理器来转义你的字符串

    关于groovy - 如何避免评估 GString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5805872/

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