Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 要使用正则表达式将字符串替换为数字吗_Json_Regex - Fatal编程技术网

Json 要使用正则表达式将字符串替换为数字吗

Json 要使用正则表达式将字符串替换为数字吗,json,regex,Json,Regex,我有一个json字符串,其值如下 "appId": 434832826 我想在数字周围加上双引号,这样json就有效了 我尝试了replaceAll:\\\s\\\d+,:\$0\ 但它正在取代价值 "appId":": 434832826" 我不确定这是否是正确的正则表达式。非常感谢你的帮助。提前感谢您可以使用jq: 假设您拥有以下json: { "appId": 434832826, "foo": "bar" } 上述命令将产生: { "appId": "43483

我有一个json字符串,其值如下

"appId": 434832826
我想在数字周围加上双引号,这样json就有效了

我尝试了replaceAll:\\\s\\\d+,:\$0\

但它正在取代价值

"appId":": 434832826"
我不确定这是否是正确的正则表达式。非常感谢你的帮助。提前感谢

您可以使用jq:

假设您拥有以下json:

{
    "appId": 434832826,
    "foo": "bar"
}
上述命令将产生:

{
  "appId": "434832826",
  "foo": "bar"
}

将数字放入捕获组并使用以下正则表达式:

replaceAll(":\\\s*(\\\d+)", ":\"$1\"");

更好地使用适当的JSON函数,这取决于所使用的语言。由于JSON中的错误,我无法将此字符串解析为JSON。实际上,我是在一根弦上做这些操作,所以你想在434832826周围加上标记吗?把数字放在一个捕获组中,然后使用这个-例如replaceAll:\\\s*\\\d+,:\$1\;是的,没错,我也想这么做
replaceAll(":\\\s*(\\\d+)", ":\"$1\"");