【发布时间】:2021-04-05 15:20:09
【问题描述】:
我的 groovy 版本是 3.0.7。
我试过这个:
String str1="Hello[World[Test"
String str2=str1.replaceAll("\\[","")
错误详情:
2021-04-06 01:11:33,087 ERROR o.a.j.e.JSR223PostProcessor: Problem in JSR223 script, JSR223 PostProcessor
javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script106.groovy: 19: Unexpected input: '(' @ line 19, column 24.
String str2 = str1.replaceAll("\[","")
我怎样才能做到这一点?
String str2=str1.replaceAll("\\[","")
【问题讨论】:
-
我无法在 3.0.7 中重现这一点,将这两行保存到一个文件中并使用
groovy so.groovy运行它。 JSR223 的东西会建议,你不只是使用 groovy 来运行代码。请提供导致该错误的所有事实。 -
您的源代码显示
str1.replaceAll("\\[","")我认为是有效的,但错误消息显示str1.replaceAll("\[","")我认为不是。这段代码是否是在某个上下文中输入的,其中在此代码进入 Groovy 解释器之前评估了 `\`? -
此代码是 jmeter JSR223 PostProcessor 的一部分。使用普通的 groovy 脚本,我可以用 replaceAll 函数替换特殊字符“[”。但是当它与 JSR223 PostProcessor 一起使用时,相同的代码会得到不同的评估。我需要在结果中替换“[”字符。如何使用 JSR223 PostProcessor 实现这一点?
标签: groovy jmeter replaceall