在Groovy中的逃脱

12

我需要在 Groovy 中进行转义的帮助。

我有一个文本文件中的一些字符串,比如 #$commonTomcat620.max_threads$# ,这些值我需要在运行时替换。

我使用了以下代码:

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

这个字符串打印出来的是 #$commonTomcat620.max_threads$# 的值,但没有在文件中替换。我尝试过不带 # $,它可以工作。

谢谢。

1个回答

22

你有几个选项可以避免美元符号的影响:

这种方式可以奏效(使用美元斜杠字符串):


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

或者这样(使用单引号字符串):

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

可能还存在其他选项


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接