如何在原始(多行)Kotlin 字符串中使用美元符号“$”?
How to use dollar sign '$' in raw (multiline) Kotlin strings?
是否有一种简洁的方法来转义原始 Kotlin 字符串中的 $
字符?
在一个简单的字符串中,我们使用 "$"
。
在原始字符串中,有一种明显但过多的方式 """${"$"}"""
,当字符串包含大量 $
时,即在 MongoDB 查询或某种第三方库模板中,这种方式不起作用。
对于 mongo 操作符你可以定义常量来避免这个问题,就这样
object MongoOperators {
const val eq = "$eq"
const val ne = "$ne"
const val and = "$and"
}
val findFilter = """
{
$and: [
"foo": { $eq : 1},
"bar": { $ne : 2}
]
}
""".trimIndent()
是否有一种简洁的方法来转义原始 Kotlin 字符串中的 $
字符?
在一个简单的字符串中,我们使用 "$"
。
在原始字符串中,有一种明显但过多的方式 """${"$"}"""
,当字符串包含大量 $
时,即在 MongoDB 查询或某种第三方库模板中,这种方式不起作用。
对于 mongo 操作符你可以定义常量来避免这个问题,就这样
object MongoOperators {
const val eq = "$eq"
const val ne = "$ne"
const val and = "$and"
}
val findFilter = """
{
$and: [
"foo": { $eq : 1},
"bar": { $ne : 2}
]
}
""".trimIndent()