获取字符串的特定部分

时间:2016-03-24 16:43:30

标签: java string parsing

我正在尝试通过从API获取响应后创建的字符串进行解析。

这是我想解析的字符串:

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

我希望能够获得翻译文本" Ola Mundo",但我不想只搜索它并获取特定文本,因为此文本可能在下次不同

3 个答案:

答案 0 :(得分:0)

这似乎是一个有效的JSON对象,一个选项是使用杰克逊库或其他东西将字符串转换为JSON对象,之后你可以得到任何你想要的东西。

答案 1 :(得分:0)

尝试使用以下Regex执行此操作:

translatedText": (.*?),

在Java中,您可以使用以下方法处理结果:

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

答案 2 :(得分:0)

如果您删除translateText();部分,只需:

  

{"数据":{"翻译":[{" translatedText":" Ola Mundo",   " detectedSourceLanguage":" en" }]}}

它是一个有效的JSON对象,您可以轻松地使用库来解析它。 See this post.如果您想安全地访问数据,建议采用这种方式。