如何解析带有尾文本和起始文本的JSON

How to parse a JSON with trailing and starting text?

本文关键字:文本 JSON 何解析      更新时间:2023-09-26

我希望通过JavaScript(jQuery)创建一个JSON的HTML版本,特别是非官方的Google Dictionary JSON (http://googlesystem.blogspot.com/2009/12/on-googles-unofficial-dictionary-api.html)。

我面临的问题是,JSON是不可读的,因为它有它前面的"dict_api.callbacks.id100("和后面的",200,null)"。

我如何删除这个,然后把它放入一个JSON对象,这样我就可以将元素附加到HTML。

这是JSONP响应。

调用由callback参数指定的函数来给出响应。
您应该创建一个全局函数来处理响应,并将其名称作为callback传递。

jQuery会为你做这些:

$.getJSON(
    "http://www.google.com/dictionary/json?q=test&sl=en&tl=en&restrict=pr%2Cde&client=te&callback=?",
    function(response) {
        alert(response);
    }
)

您可以做的一件事是编写一个正则表达式(或一对正则表达式)来做如下事情:

字符串。replace(/匹配start/, "的正则表达式)字符串。替换(/匹配结束/的正则表达式,")

注意不要使用贪心正则表达式,在这种情况下,我看到过贪心表达式的结果很有趣,但不是很有帮助。

否则,我肯定会支持SLaks关于使用JQuery的其他回应,因为它还应该为您以后处理数据提供额外的能力,如果您在事后需要更改的话。