我知道这是一个非常具体的问题,因为我自己没有设法进行替换,因此我需要用Groovy替换此字符串:
com.pantest 在 com / pantest 中。
我尝试过:
groupId =com.pantest
def mavenGroupID = groupId.replaceAll('.','/')
这就是我在输出中得到的:
echo mavenGroupID is //////////
mavenGroupID is //////////
点(。)是某种特殊字符吗?我尝试使用****对其进行转义,但也无法正常工作。
答案 0 :(得分:1)
如评论中所述,String.replaceAll将正则表达式作为输入,因此这意味着您至少需要转义点,但实际上,还必须转义转义的反斜杠\
(有关Regular Expression to match a dot的更多线索)
因此,您可以按照以下步骤进行操作:
def test = "aaa.bbb.ccc"
//want to replace ., need to use escape char \, but it needs to be escaped as well , so \\
println test.replaceAll('\\.','/')
输出是根据请求aaa/bbb/ccc
replaceAll('\\.','/')
是关键