2014-11-26 5 views
1

Я пытаюсь использовать $ .parseJSON в JQuery для разбора файла перевода и застревают в этой строке:Анализировать JSON с немецкими специальными символами

"[„Alle“, „Spezifische Tage“]"

что кажется parseJSON не нравится немецкий Цитата „ “, я попытался добавить одну или двойную обратную косую черту, но, похоже, не работает.

Это так или иначе, чтобы изменить слово "[„Alle“, „Spezifische Tage“]", чтобы его можно разобрать в json, и все еще показывать котировку в настоящее время?

+0

Показывать немецкие котировки? Вы хотите, чтобы кавычки отображались? –

+0

Да. Я все еще хочу правильно показать немецкую цитату. – user1787096

+0

Просто чтобы этот вопрос был ясен ... у вас есть эта строка выше ... и вы хотите, чтобы это анализировалось как JSON, включая немецкие кавычки, поэтому вы получаете некоторые как «Все» и '' Spezifische Tage''? Если да, то я думаю, @JuanMendes прав с его ответами – Dwza

ответ

2

То, что у вас есть, недействительно JSON, то есть у вас есть некорректные строки. Они должны быть указаны с использованием " не или

Если вы хотите, немецкие цитаты для отображения, простое решение для набора данных будет для вас, чтобы написать код, чтобы обернуть ваши строки с регулярными кавычки.

var json = "[„Alle“, „Spezifische Tage“]". 
 
    replace(/„/g, '"„'). 
 
    replace(/“/g, '“"'); 
 
alert(JSON.parse(json));

Правильное решение для тех, кто генерироваться ваши данные правильно JSON кодировать.

0

Правильный формат JSON позволяет только двойные кавычки:

JSON.parse('["Alle", "Spezifische Tage"]') 

Вы можете использовать http://jsonlint.com/ для проверки ваших строк.

+0

Это правильно. Строка OP недействительна JSON. OP может использовать регулярные выражения для преобразования немецких котировок в двойные кавычки программирования. –

+0

На самом деле это не ответ на вопрос ops. Немецкие котировки являются или должны быть частью строки и не подлежат замене .... – Dwza

Смежные вопросы