Существуют ли онлайн-инструменты для замены одинарной кавычки на двойную кавычку в недопустимом JSON или какое-либо решение использовать недопустимый json в PHP? - PullRequest
1 голос
/ 05 октября 2019

У меня так много файлов JSON-инвила.

Это фрагмент недопустимого файла JSON.

[
    {
    'name':'Arden',
    'born':'1973-12-22',
    'orientation':'Heterosexual',
    'purpose':'Friendship',
    'tags':'cooking,swimming,adventure,drawing',
    'country':'United Kingdom::Edinburgh',
    'about':'I often read (and enjoy!) things that are completely opposed to everything I believe. I've enjoyed.'
    },

    {
    'name':'Sisera',
    'born':'1962-01-25',
    'orientation':'Homosexual',
    'purpose':'Flirt',
    'tags':'reading,fishing,tennis,theater',
    'country':'United States::Fairfield',
    'about':'I'm OCD about shoes being placed side-by-side. I don't like them together by the door.'
    }
]

Как заменить эту одинарную кавычку двойной кавычкой? Существуют ли онлайн-инструменты или какое-либо решение в PHP?

Я хочу следующее:

[
    {
    "name":"Arden",
    "born":"1973-12-22",
    "orientation":"Heterosexual",
    "purpose":"Friendship",
    "tags":"cooking,swimming,adventure,drawing",
    "country":"United Kingdom::Edinburgh",
    "about":"I often read (and enjoy!) things that are completely opposed to everything I believe. I\'ve enjoyed."
    },

    {
    "name":"Sisera",
    "born":"1962-01-25",
    "orientation":"Homosexual",
    "purpose":"Flirt",
    "tags":"reading,fishing,tennis,theater",
    "country":"United States::Fairfield",
    "about":"I\'m OCD about shoes being placed side-by-side. I don\'t like them together by the door."
    }
]

Заранее спасибо.

1 Ответ

0 голосов
/ 05 октября 2019

вы можете использовать это

str_replace("'",'"',$jsonstring)

Для онлайн-инструмента вы можете использовать этот форматер https://www.freeformatter.com/json-formatter.html#ad-output

Как предложено super для preg_replace. код должен быть таким

preg_replace("/',/", '",', preg_replace("/':'/", '":"', preg_replace('/[ \t]+/', ' ', preg_replace("/[\r\n]+\s*[']\s*/", "\n\"", $jsonstring))));
...