groovy - 逃脱常规

标签 groovy escaping

我需要帮助来逃避常规

我在文本文件中有一些字符串,例如#$ commonTomcat620.max_threads $#这些值我必须在运行时中替换。

我使用以下代码:

    def str = "#\$commonTomcat620.max_threads\$#"
    fileContents = fileContents.replaceAll("${str}","100");

此str以#$ commonTomcat620.max_threads $#的形式打印。但不能替换文件。我尝试了withOut#$。这是工作。

谢谢。

最佳答案

您有两种选择可以逃脱美元符号:

这有效(使用美元斜线字符串):

def str = $/#\$$commonTomcat620.max_threads\$$#/$

或以下(使用单引号字符串):
def str = '#\\$commonTomcat620.max_threads\\$#'

其他选择也可能存在

关于groovy - 逃脱常规,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13121277/

相关文章:

groovy - Jenkinsfile管道DSL : How to Show Multi-Columns in Jobs dashboard GUI - For all Dynamically created stages - When within PIPELINE section

groovy - 为什么提取这个方法在gradle中不起作用?

Java 和 JVM 混淆(如果 Java 可以处理大字符串为什么 groovy 不能?)

image - 替代 unescape() 并将图像保存为 base64

mysql 在我的查询中转义特殊的 4 个字符

sql-server-2008-r2 - 转义 T-SQL "pattern"表达式字符类中的 ] 和 ^ 字符

spring - 为什么我不能让 Spring 加载时间编织工作

javascript - gsp更改未反射(reflect)在grails 2.5.1中

python - 转义字符几乎不起作用或不一致(特别是\t)

go - 如何转义模板的输出?