2 weixin 32925027 weixin_32925027 于 2016.01.25 13:18 提问

c#翻译软件开发的问题

最近公司让做一个翻译软件用于英文短段落英译汉,内部使用,要求的功能是:短句翻译,用户可自主添加库内容。我打算用c#来做,看似功能很简单,但是由于项目经验很少,至今没有头绪。
现在有几个问题想请教大神们,首先如何对句内进行主谓宾状划分?其次,英语语法如何转化为可以理解的中文语法?最后,有什么需要注意的地方?

小弟第一次接手做东西,已经实在无法,网上给的都是使用api来调用在线翻译,我要做的是离线软件,望各位能指点迷津,给点思路!多谢!

5个回答

spartan_117
spartan_117   2016.01.25 14:23
已采纳

大概分这么几步,仅供参考:

1、英语有自己的时态表达方式。我们上中学的时候就学过几种不同的时态,比如现在进行时、一般过去时、将来时等等。我英语学的不好哈,见谅。
这些时态都是有自己固定的语法格式,比如:I am.... 或 I'm ... 等等。你首先要将常见的时态罗列出来,然后编辑为正则表达式,并按照不同的时态
和语法在表达式中提取出对应的主语、谓语、宾语等。

2、建立一个单词对照表,将第一步提取的单词进行直译。

3、将直译的结果拼接成短句,然后展示。

4、建立一个修正库,若翻译的短句有误可以由客户进行校正,经过采纳的校正就可以作为你的备选答案展示给客户。

5、将用户采纳最多的结果排在最前面。

6、开工吧! ^_^

suiyunonghen
suiyunonghen   2016.01.25 13:31

直接采用现有的网络翻译SDK,比如说百度翻译或者Bing翻译的接口就行。

enpterexpress
enpterexpress   Rxr 2016.01.25 13:37

先写个英译汉单词练练手

rui888
rui888   Ds   Rxr 2016.01.25 13:43

离线的估计麻烦点。因为你没有数据要么你把数据开始全部都存储起来
还是觉得调用在线api 会方便。

weixin_32925027
weixin_32925027   2016.01.26 12:46

多谢各位哈!我先把语法的东西搞定

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
一个害了中国软件开发人员若干年的单词翻译
 在众多的软件书籍中单词function,被翻译成函数、方法,对于普通人来说好高深的单词啊,什么是函数啊,什么是方法啊?一下就被镇住了。正确的翻译是“功能”,一个function,就一个功能,和我们的母语定义一致了,这下满意了吧。 什么函数、方法的称谓,还要在去转换一下,到底啥叫函数呢?中文里整个是新词,它的解释就是function,没有中文含义,建立理解的方式只好是一堆堆functi
软件开发工程师工作总结
1、 分享第一条经验:“学历代表过去、能力代表现在、学习力代表未来。”其实这是一个来自国外 教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很 重要:“重要的道理明白太晚将抱憾终生!”所以放在每一条,让刚刚毕业的朋友们早点看到哈!     2、 一定要确定自己的发展方向,并为此目的制定可行的计划。不要说什么,“我刚毕业,还不知道 将来可能做什么?”
介绍一个翻译国外优秀开发文章的项目
http://www.jcodecraeer.com/a/androidweekly/2015/0402/2680.html
多功能翻译软件,非常适合编程人员使用
一个多功能的翻译软件,方便实用 适合编程人员使用
.NET软件工程师48个面试题目
一.填空题 1.面向对象的语言具有(继承)性、(多态)性、(封装)性。 2.能用foreach遍历访问的对象需要实现 (IEnumberable)接口或声明(GetEnumberator)方法的类型。 3.列举ADO.net中的五个主要对象(Command)、(Connection)、(DataReader)、(DataSet)、(DataAdapter)。 4.C#中的三元运算符是__(
十道腾讯软件开发工程师面试题
本来在一加软件公司工作,三月初的时候无意中收到深圳腾讯云的电话(对方表明身份后,说看到我的简历,想和我聊聊。当时没有电面经验再加上也没有进来也没有投简历,爽快的答应聊就聊呗。
软件开发中遇到的一些问题
软件开发中遇到的一些问题 对近日来一些问题进行思考,希望能有个解决方案。 1、数据库方面每个项目都离不开数据库,而数据库的建立过程是个问题,如何将我们的开发成果移动到运营环境中是个问题,如何维护以后的更新更加是个问题,所有的东西都看起来是那么简单而缺乏技术含量,但真的尝试把它做好却是非常不容易,人工手动来维护这些文档是可以的,但恐怕这是一个专门的工作,如果干这个的人还同时做别的
软件开发过程中的常见问题
1.前言应用软件系统是事件驱动的软件系统,系统通过接口接受事件后,交由系统业务层处理,业务层处理完事件后将需要的信息存入数据库,整个应用软件系统分为三个子系统:接口子系统,业务子系统,数据库子系统,业务子系统进一步分为三个子系统:表示层,业务层,数据接入层。其中业务层是整个系统的核心,表示层负责通过接口子系统接收系统事件交给业务层处理,数据接入层供业务层使用完成数据的持久化。每个层对编
关于软件开发中遇到的问题解决思路
开发过程中,难免会遇到各种问题,但是针对问题解决思路有很多,这里记录下,目前使用的方法,以便后续遇到问题不会在慌忙中处理。 1、【日志文件】查看软件记录的日志文件,针对日志和代码结合进行分析,如果针对关键逻辑,没有日志记录的习惯,那你就GG了,因为有些问题不是必现的,或者说你不能明确知道问题重现的步骤。 2、【抓包分析】,抓包有时真的很方便的,我今天就用抓包找到了一个不好解决的问题,常用的就是
软件项目开发过程中主要遇到的核心问题小结
1、软件项目开发合同的订立,合同需要对将来几个月甚至几年需要做的事情有个明确的定义说明,限定好工作范围、工作内容、承担的责任、项目总费用,每个阶段支付的费用都需要有明确的说明甚至付款条件等都需要一清二楚,很多东西都没讲明白是将来合作不愉快的导火索,这些都需要白纸黑字写清楚,其实从合同上也能看出甲乙双方的水平在什么层次上的。 2、软件开发过程中,往往会发生客户不按时支付费用的事情,