首页 > 解决方案 > 正则表达式在 JSON 中查找值

问题描述

我需要在 JSON 上编写 RegEx 以匹配以{$开头并以}结尾的所有内容

我试过了/{(.*?)}/g,它似乎工作正常,但如果你看到下面的图像,它也与其他文本匹配,那么我如何明确地为我的要求编写正则表达式

问的原因是我需要用{$*}查找值并用字符串替换它们

在此处输入图像描述

下面是我的 JSON

{
    "name": "{$StubName}",
    "request": {
        "method": "POST",
        "url": "/marks/{$Name}",
        "bodyPatterns": [
            {
                "equalToJson": "{\n    \"name\": \"{$RequestName}\",\n    \"job\": \"{$Role}\"\n}"
            }
        ]
    },
    "response": {
        "status": "201",
        "headers": {
            "Content-Type": "application/json"
        },
        "body": "{\n    \"name\": \"{$RequestName}\",\n    \"job\": \"{$Role}\",\n    \"id\": \"{$id}\",\n    \"createdAt\": \"{$Time}\"\n}"
    }
}

标签: javaregex

解决方案


您可以使用\{\$\w*\}

正则表达式演示


推荐阅读