Сначала вам нужно быть немного более конкретными с этими данными, чтобы получить в строку текста, который вы хотите:
var temp = JSON.parse(resp).data[0][3]['__html'];
Затем вам нужно будет найти эту строку, чтобы извлечь нужные данные. Это будет во многом зависеть от регулярности ответа, который вы получаете. В любом случае вам, вероятно, понадобится использовать регулярное выражение для анализа строки, которую вы получите в ответе.
В этом случае вы пытаетесь получить текст внутри элемента <span>
в строке. Если это имело место для всех ваших ответов, вы могли бы сделать что-то вроде:
var text = /<span[^>]*>([^<]*)<\/span>/.exec(temp)[1];
Это очень определенно выглядит текст в открытии и закрытии одного диапазона тега, который не содержит никаких других тегов HTML.
Основная часть, на которую нужно обратить внимание, - это ([^<]*)
, которая будет захватывать любой символ, который не является угловым кронштейном, <
. Все вокруг этого ищет экземпляры <span>
с необязательными атрибутами. exec
- это метод, который вы выполняете в строке temp
, чтобы вернуть совпадение, и [1]
даст вам первый и единственный захват (например, текст между тегами <span>
).
Вам нужно узнать больше о RegExp, чтобы узнать, как сделать что-то более конкретное (или предоставить более конкретную информацию в вашем вопросе о шаблоне ответа, который вы ищете). Но, как правило, стоит прочитать регулярные выражения, если вы собираетесь выполнять такую работу (разбор текста, поиск шаблонов и совпадений), потому что они очень сжатые и мощные способы сделать это, если сначала немного запутать ,
сделать 'console.log (TEMP)' (если вы на браузер, который обеспечивает это), и вы увидите, что вам нужно сделать. –
Похоже, он должен быть: 'JSON.parse (соответственно) .data [0] [3] ._ html' – RayViljoen
@MarcB: console.log (температура) = [ [ "заменить", "", правда , { "__html": "\ u003Cspan класс = \" изюминкой FSM \ "ID = \ "u_c_0 \"> Я хочу, чтобы этот текст только \ u003C \/SPAN>" } ] ] –