Удалять двойную кавычку только внутри другой двойной кавычки (VB.NET)

Я использую библиотеку JSON.NET для получения строки JSON из Интернета, но проблема в том, что я получаю двойную кавычку внутри строки.

строка, которая приходит из Интернета, выглядит следующим образом

{"accionObjeto":"post","accionTipo":"commentario","ts":"02:48:55","nick":"seba123neo","userId":"1180918","id":15521634 ,"accion_name":"Hola","url":"","titulo":"Hola como" estas"}

строка идеальна, кроме конца

вот проблема

"titulo":"Hola como" estas"

Я должен удалить эту двойную кавычку, потому что в противном случае JSON будет «недействительным».

Я везде искал, но не могу найти, как это сделать, мне нужно только стереть двойную кавычку, но не стирать все остальные кавычки во всей строке.

Спасибо за вашу помощь.


person seba123neo    schedule 19.08.2012    source источник
comment
Поскольку строка JSON, поступающая с интернет-сайта, недействительна, вы ничего не можете с этим поделать. Свяжитесь с веб-мастером и сообщите ему о проблеме. Исправлять должен автор, а не потребитель (вы).   -  person Olivier Jacot-Descombes    schedule 20.08.2012
comment
на самом деле это не ошибка, сгенерированная из Интернета, единственное, что он делает в Интернете, это приносит мне заголовок опубликованного сообщения, а в заголовках сообщений могут быть двойные кавычки, ошибка - JSON. но я думаю это можно решить программно.   -  person seba123neo    schedule 20.08.2012
comment
Взгляните на регулярные выражения — это похоже на проблему, которую они могут легко решить.   -  person Michael Rodrigues    schedule 20.08.2012


Ответы (1)


Из вашего вопроса неясно, генерируете ли вы строку JSON или загружаете ее из Интернета. Если вы создаете его, а библиотека неправильно экранирует строки, подумайте об их экранировании самостоятельно.

Это список допустимых побегов

\b  Backspace (ascii code 08)
\f  Form feed (ascii code 0C)
\n  New line
\r  Carriage return
\t  Tab
\v  Vertical tab
\'  Apostrophe or single quote
\"  Double quote
\\  Backslash caracter

Как вы можете видеть, вам придется экранировать двойную кавычку с помощью \". Прежде чем писать код самостоятельно, внимательно изучите библиотеку, которую используете. Я был бы удивлен, если бы он не предоставлял такой функциональности.

person Olivier Jacot-Descombes    schedule 19.08.2012