我遇到的问题是Google翻译API的翻译文本没有换行符。
我有一个像这样的原始查询字符串:
RELATED WORK .
Studies of group work have shown the importance of
我为查询字符串做了一个URL编码,它显示了这个:
RELATED%20WORK%20.%0D%0A%0D%0AStudies%20of%20group%20work%20have%20shown%20the%20importance%20of
问题在于提交给Google Translate API:
https://www.googleapis.com/language/translate/v2?key=<key>&source=en&target=ja&q=RELATED%20WORK%20.%0D%0A%0D%0AStudies%20of%20group%20work%20have%20shown%20the%20importance%20of
我只在一行中得到回复(没有换行符):
{
"data": {
"translations": [
{
"translatedText": "関連作業 。グループワークの研究は、"
}
]
}
}
我的最终目标是逐行解析翻译后的文本,以便正确呈现。
我只是显示URL,即使只是通过浏览器访问它,它也不会显示响应中的换行符。
有什么想法吗?
答案 0 :(得分:6)
翻译api有一个参数format
,您可以将其设置为text
。这将保留换行符。请参阅https://cloud.google.com/translate/docs/reference/translate。
答案 1 :(得分:4)
通过在输入字符串中将\r\n
替换为<br>
来实现它。
答案 2 :(得分:1)
用\r\n
替换<br>
确实有用,但它似乎认为它是一个句子的结尾,因此限制了翻译评估的范围,从而导致翻译不够理想。该行的第一个字符也成为大写字母,这就是我的线索。
我所做的是用\r\n
替换<code>0</code>
,然后在翻译后再回来 - 这给了一个很好的翻译,因为它没有看到<code>0</code>
对句子的贡献。不理想,但提供了更好的翻译。
答案 3 :(得分:0)
技术含量较低的解决方法:
简单的文本程序,例如microsoft write或note pad或libre office writer。 写在那里,然后复制/粘贴到Google翻译中。保留换行符。