2016-03-24 181 views
0

我想通過從API獲取響應後創建的字符串進行解析。獲取字符串的特定部分

這是我試圖解析字符串:

// API callback 
translateText({ 
"data":{ 
    "translations":[ 
    { 
    "translatedText": "Ola Mundo", 
    "detectedSourceLanguage": "en" 
    } 
] 
} 
} 
); 

我希望能夠得到翻譯後的文本「世界報奧拉」,但我不希望只是通過它可以搜索和獲取具體的文本,因爲這個文本下次可能會有所不同。

+0

這個問題已經在這裏解答:http://stackoverflow.com/questions/2591098/how-to-parse-json-in-java –

回答

0

看起來這是一個有效的JSON對象,其中一個選擇是使用Jackson庫或其他類型將字符串轉換爲JSON對象,之後您可以獲取任何所需內容。

0

嘗試這樣做,有以下Regex

translatedText": (.*?), 

在Java中,你接近的結果與:

Pattern p = Pattern.compile(""); 
Matcher m = p.matcher(str); 
0

如果您刪除translateText();一部分,只是有:

{「data」:{「translations」:[{「translatedText」:「Ola Mundo」, 「detectedSourceLanguage」:「en」}]}}

其有效的JSON對象,您可以輕鬆地使用庫來解析它。 See this post.如果您想安全訪問數據,建議使用此方法。

+0

我不能從字符串中刪除任何東西,因爲它會自動生成代碼 – Jdavis649

+0

你可能只是創建一個新的字符串並刪除前13個字符和最後2個字符。 –