Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取字符串的特定部分_Java_String_Parsing - Fatal编程技术网

Java 获取字符串的特定部分

Java 获取字符串的特定部分,java,string,parsing,Java,String,Parsing,我试图通过一个字符串进行解析,这个字符串是在从API获得响应后创建的 这是我试图解析的字符串: // API callback translateText({ "data":{ "translations":[ { "translatedText": "Ola Mundo", "detectedSourceLanguage": "en" } ] } } ); 我希望能够获取翻译文本“Ola Mundo”,但我不想只是搜索它并获取特定文本,因为下次该文本可能会有所不同

我试图通过一个字符串进行解析,这个字符串是在从API获得响应后创建的

这是我试图解析的字符串:

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

我希望能够获取翻译文本“Ola Mundo”,但我不想只是搜索它并获取特定文本,因为下次该文本可能会有所不同。

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

试着用以下方法做到这一点:

在Java中,您可以通过以下方式接近结果:

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

如果删除
translateText()零件,只需拥有:

{“数据”:{“翻译”:[{“翻译文本”:“Ola Mundo”, “detectedSourceLanguage”:“en”}]}


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

这里已经回答了这个问题:我无法从字符串中删除任何内容,因为它会自动生成代码。您可以创建一个新字符串,然后删除前13个字符和后2个字符。
Pattern p = Pattern.compile("");
Matcher m = p.matcher(str);