groovy将双引号替换为单引号,将单引号替换为双引号

groovy将双引号替换为单引号,将单引号替换为双引号,groovy,quotes,Groovy,Quotes,我有一个字符串“['type':'MultiPolygon','coordinates':[[73.31,37.46],[74.92,37.24]]” 如何将所有单引号替换为双引号,将双引号替换为单引号? 结果应该是这样的: “[”类型“:”多多边形“,”坐标“:[[73.31,37.46],[74.92,37.24]]”要使用该方法。由于第一个转换将被第二个转换覆盖,您可能需要一个临时变量: String replacePlaceholder = '%%%' // Some unlikely-

我有一个字符串
“['type':'MultiPolygon','coordinates':[[73.31,37.46],[74.92,37.24]]”

如何将所有单引号替换为双引号,将双引号替换为单引号? 结果应该是这样的:
“[”类型“:”多多边形“,”坐标“:[[73.31,37.46],[74.92,37.24]]”

要使用该方法。由于第一个转换将被第二个转换覆盖,您可能需要一个临时变量:

String replacePlaceholder = '%%%' // Some unlikely-to-occur value
yourString = yourString.replaceAll('\'', replacePlaceholder)
    .replaceAll('"', '\'')
    .replaceAll(replacePlaceholder, '"')
这当然不是最有效的方法,但这是一个开始。

从@yate给出的方法中,您可以找到一种方法:

tr(String sourceSet, String replacementSet)
并将其应用于字符串,如下所示:

def yourString = ...
def changedString = yourString.tr(/"'/,/'"/)

这就可以了。

。如果我知道的话,为什么需要这样做?作为一个web服务的输入,请检查groovy文档中的。使用斜杠字符串
str.tr(/“/”/,/“/”/)