2009-09-28 76 views
1

我需要导出信息并且必须翻译出口文本。在数据库中数据是非翻译形式。我的应用程序要求说用户必须也能够将导出的CSV文件导入数据库,所以我需要将翻译后的文本反转为I18N格式,这是数据库中的数据格式。我该怎么做,或者有没有一种理智的方式来做到这一点?是否可以逆转I18N翻译?

+0

@newbie字符串,他们是分开的(=一个接一个),还是它们连接在一起?如果他们分开,问题就容易得多。 – KLE 2009-09-28 13:18:18

回答

2

我同意你的意见。 在一般情况下,它似乎是不知名的!就像是: !!!

  • 采取所有翻译的字符串作为图案,一个接一个(使用一些优先级)
  • 当一个模式匹配,与未翻译值替换为模式
  • 循环播放,直到完成!

许多问题都可以envisionned ...


这涉及到自然语言处理的研究领域。 所以它很好...研究!在日常编程中不太容易使用!

但是如果您觉得有兴趣,Google应该找一些算法。 我相信他们建立在一个复杂的模型上(与正则表达式相比!)。


我希望你有指导您 ... 随着越来越多的背景下一点的一些其他信息,它可能是一个更容易的问题...

+0

这只是基本的用户信息表,但有许多领域20 + ... – newbie 2009-09-28 12:28:21

+0

@newbie的字符串,是他们分开(=逐个),或它们被连接?如果他们分开,问题就容易得多。 – KLE 2009-09-28 13:18:54

+0

我加载了翻译文件以相反的顺序散列映射,所以现在我可以使用翻译后的字符串作为键来获得反向翻译... thnx .. – newbie 2009-09-29 06:37:44

0

你需要保持一个字典翻译消息表。你可能已经有一种形式。

Master message list 
| Message key | English text  | 
| 1   | Payment rejected | 

Translations 
|Translation  | Message key | 
|Paiement rejeté | 1   | 
|Talu Gwrthodwyd | 1   | 
|Maksu hylätty  | 1   | 

您可以使用连接来搜索您的数据导入翻译的文本,并将其映射回未翻译的文本(或只是存储邮件键)。

这可能是值得做这个更强大的由“减少”的翻译文本 - 带不必要的空白,取代重音符号等存储翻译和搜索之前之前执行此操作。数据库索引应该快速搜索。