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