繁体   English   中英

如何在速度模板(AWS appsync + elasticsearch)中使用字符串替换?

[英]How to using String replace in velocity template (AWS appsync + elasticsearch)?

我正在编写一个 appsync 查询以通过弹性的电话号码搜索记录(使用速度模板)。

存储在弹性上的数据具有“0123456789”的形式,但请求可能采用“012-123-1234”的形式。 所以我打算使用字符串替换功能来删除“-”字符。 但是,我的代码返回以下错误:

"message": "Lexical error, Encountered: \" _ \ "(95), after: \". \ "at * unset * [line 11, column 51]"

不知道我写的对不对,请大家帮忙。

这是我的代码:

{
    "version":"2017-02-28",
    "operation":"GET",
    "path":"/res/res/_search",
    "params":{
        "headers":{},
        "queryString":{},
        "body":{
            "from":$util.defaultIfNull($ctx.args.nextToken, 0),
            "size":$util.defaultIfNull($ctx.args.limit, 20),
            "query": {
                 "match": { "phoneNumber": "$context.args.phoneNumber".replace('-', '') }
            }
        }
    }
}

好吧,我发现了错误,它是 " 字符的错误位置。

"match": { "phoneNumber": "$context.args.phoneNumber".replace('-', '') }

=>

"match": { "phoneNumber": "$context.args.phoneNumber.replace('-', '')" }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM