已知:我已经建好了一个表not_english,字段和值如下:
         id       chinese   english
1 省 Province
2 市 City
3 县 County
4 镇 Town
5 区 District
6 路 Road
7 街 Street
         (不断添加).....已知:河南省南阳市中州路42号 翻译为
      Room 42,Zhongzhou Road, Nanyang City,Henan Province      其中河南、南阳、中州,均为汉字转换拼音而来,已经解决。
      省、市、路,其译文已经在数据库中指定。问题:给出一个长长的住址,如何有效的去翻译它?算法如何实现?如何判断出住址中是否存在数据库中指定的住址关键字(如省、市、县、乡、花园)?请大家给一个思路,谢谢。

解决方案 »

  1.   

    另外,说明一下,汉字转拼音的方案,我是利用“微软拼音输入法”实现的,其它的方法均不可行,不能解决多音字的情况。比如“方便面便宜”。本帖重点讨论住址翻译问题。
      

  2.   

    先用正则表达式找出满足的格式,再替换
      

  3.   

    楼上的给个思路先,或者例子也可以。
      

  4.   

    这是某人给我的建议该问题用到的技术主要有:
    1.中文分词技术
    2.必须有中文词库,你这个地方用你的数据表就可以。
    3.在加载页面之前对文字进行分词处理(英文翻译的倒装顺序等)1. 完整的分词相当复杂,实现成本很高.(除非你盗版别人的)
      就你所需要的应用(地名分析),完全没有必要上整套的分词系统.不就是半句话嘛!2. 不需要专用的词库!
      从现实出发,要想多快好省的完成这项目,最省力的办法就是容错运行,最后人工修改.
      不管3721,先写程序把地址表全部转换为按区域等级分类的结构体.
      然后将可能有错的挑出来单独修改. 比如 "某某市菜市口街"存在两个"市",需要人为干预.3. 如果想做得好,可以找国家地理或行政管理部门索取或购买现成的地址表.
      

  5.   

    没人回帖,我只好自我回帖了,是在别的论坛上找到的答案。