正则表达式:从Json值中删除双引号

时间:2017-02-05 23:00:02

标签: regex

我在正则表达式上绝对可怕,我现在遇到一个问题,我只能通过正则表达式修复

我有一个json字符串,在错误的地方有双引号

例如:

[
  {
    "customerid": "1234",
    "price": "123.456",
    "foo","bar"
  }
]

我想从所有字段(customerid,price)中删除双引号,并将它们保留为任何字母数字字符(foo)

有没有可以帮助我实现这一目标的神奇正则表达式?

2 个答案:

答案 0 :(得分:0)

sed

$ sed -r 's/"([0-9]+\.?[0-9]*)"/\1/' file

你也可以微调以处理值,但不确定是否需要json格式。

答案 1 :(得分:0)

删除"简单"周围的双引号数字使用以下正则表达式模式:

"(-?\d+(\.\d+)?)"

替换组是$1

https://regex101.com/r/gfVkaa/1