我必須修改文件json。我必須用雙引號替換單引號,但我不能使用以下命令sed -i -r "s/'/\"/g" file
,因爲在文件中有更多單引號不會更改。用括號中的雙引號替換單引號
以下代碼是串的一個例子:
"categories": [['Clothing, Shoes & Jewelry', 'Girls'], ['Clothing, Shoes & Jewelry', 'Novelty, Costumes & More', 'Costumes & Accessories', 'More Accessories', 'Kids & Baby']]
的desided結果應該是:
"categories": [["Clothing, Shoes & Jewelry", "Girls"], ["Clothing, Shoes & Jewelry", "Novelty, Costumes & More", "Costumes & Accessories", "More Accessories", "Kids & Baby"]]
示例文件:
{"categories": [['Movies & TV', 'Movies']], "title": "Understanding Seizures and Epilepsy DVD"},
{"title": "Who on Earth is Tom Baker?", "salesRank": {"Books": 3843450}, "categories": [['Books']]},
{"categories": [['Clothing, Shoes & Jewelry', 'Girls'], ['Clothing, Shoes & Jewelry', 'Novelty, Costumes & More', 'Costumes & Accessories', 'More Accessories', 'Kids & Baby']], "description": "description, "title": "Mog's Kittens", "salesRank": {"Books": 1760368}}},
{"description": "Three Dr. Suess' Puzzles", "brand": "Dr. Seuss", "categories": [['Toys & Games', 'Puzzles', 'Jigsaw Puzzles']]},
我使用的正則表達式,但問題是我不知道括號中有多少元素。所以我想用一種方法來替換括號中的所有單引號,這是一種完美的方式,但我找不到解決方案。
你的意思是,你只能改變報價在給定的直線?你能發佈一個(小)完整的json文件嗎? –
{「categories」:[[''Movies&TV','Movies']],「title」:「Understanding Seizures and Epilepsy DVD」}, {「title」:「地球上的誰是湯姆貝克?」, salesRank「:{」Books「:3843450},」categories「:[['Books']]}, {」categories「:[['Clothing,Shoes&Jewelry','Girls'],['Clothing,Shoes &'Jewelry','Novelty,Costumes&More','Costumes&Accessories','More Accessories','Kids&Baby']],「description」:「description」,「title」:「Mog's Kittens」,「salesRank 「:{」Books「:1760368}}}, {」description「:」三個Suess博士拼圖「,」brand「:」Dr.Seuss「,」categories「:[['玩具和遊戲','拼圖','拼圖']]}, – Nanan
對不起,很難讀...但如果你看到字段」類別「,我會改變在雙引號中使用單引號......但是在該字段中有不同數量的字符串 – Nanan