2010-11-15 4 views
5

Я искал способ захватить структурированный текст (разделы, абзацы, акцент, списки и т. Д.) В JSON, но я еще ничего не нашел. Какие-либо предложения? (Markdown перешел мне на ум, но там может быть что-то лучше.)Структурированный текст в JSON

ответ

5

HTML - это хорошо известный способ описания структурированного текста в текстовом формате (!). Markdown (как вы упомянули) также будет работать.

Мое мнение, что ваш лучший выбор, вероятно, будет использовать какую-то разметку в виде обычного текста, такую ​​как эти варианты, и поместить текст в одну строковую переменную JSON. В зависимости от вашего приложения может иметь смысл иметь массив разделов, содержащий массив абзацев, содержащий массив нормальных/полужирных/разделов разделов и т. Д. Однако в общем случае я считаю, что хорошие старомодные блоки разметка будет по иронии судьбы чище и масштабируемо из-за простоты их прохождения и хорошо разработанных библиотек для полномасштабного разбора, если это необходимо.

5

Как о чем-то вроде этого:

[ { "heading": "Foobar Example" }, 
    { "paragraph": 
    [ 
     "This is normal text, followed by... ", 
     { "bold": "some bold text" }, 
     "etc." 
    ] 
    } 
] 

То есть:

  • использовать строку для обычного текста без форматирования или другой наценки;

  • использовать массив, когда вы хотите указать упорядоченную последовательность определенных текстовых элементов;

  • использовать объект, в котором ключ указывает разметку, а значение - текстовый элемент, к которому применяется форматирование.

+0

Почему это получило нижний предел? В зависимости от варианта использования искателя, это может быть отличным решением. (Возможно, он хранит полнотекстовый документ в JSON, как часть хранилища данных или что-то в этом роде). –

0

Там также, как представляется, спецификация, которая может сделать это Markdown Syntax for Object Notation (MSON)

Не уверен, что, если для вас это стоит проблема реализации спецификации, но это, кажется, вариант.

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