日期:2014-05-18  浏览次数:20804 次

求 字符相似匹配 解决方案
C# code
/// <summary>
    /// 岗位类别
    /// </summary>
    public class Jobsort
    {
        /// <summary>
        /// 岗位编号
        /// </summary>
        public string JobsortID { get; set; }
        /// <summary>
        /// 岗位名称
        /// </summary>
        public string JobsortName { get; set; }
    }


给定一个List<Jobsort>集合假定里面有对应的数据为:
0100 计算机/互联网类
0101 首席技术官CTO
0102 首席信息官CIO
0103 技术总监/信息技术总监
0104 技术经理/主管
0105 信息技术经理/信息技术主管
0106 项目总监
0107 项目经理/主管
0108 互联网运营
0109 项目执行/协调人员
0110 信息技术专员
0111 产品经理
0112 高级软件工程师
0113 软件工程师
0116 高级硬件工程师
0117 硬件工程师
0119 系统集成工程师
0121 系统工程师
0123 计算机辅助设计工程师
0124 数据库工程师/管理员
0126 文档工程师
0128 游戏开发工程师
0130 网络与信息安全工程师
0400 机械/仪器仪表/设备类
0414 设备工程师
0415 机械/设备维修
0499 其他(机械/仪器仪表/设备类)
2414 医疗设备注册
2415 医疗设备生产/质量管理
3207 采购设备/材料质量管理

现给出一个不确定的岗位名称,如:设备可靠性工程师
如何匹配最相似的职位ID
如上应该匹配出:设备工程师=》0414

注:可用分词技术匹配 如设备可靠性工程分词为:设备,可靠性,工程师的一个List<String>集合;提供一个分词技术:盘古分词

------解决方案--------------------
http://topic.csdn.net/u/20110507/18/a2674a7a-0c76-4d01-8c81-430625e8b3f9.html
------解决方案--------------------
不知道hash值行不行?回去研究下
------解决方案--------------------
LZ可以看看这个,跟你很类似

http://www.ffner.cn/flash8/html/2.html
------解决方案--------------------
我倒是想到一个办法
你不是已经把职位都存到数组里了吗,并且按照词语存储的。
你可以将你要查询的职位也按词语分组,和已有的职位分组匹配,只要匹配一个就可以显示了。
------解决方案--------------------
不光搜索条件要分词,搜素目标也需要分词,先设计一个合理的数据结构,剩下的逻辑就很简单了。
------解决方案--------------------
不是给你代码了么。
------解决方案--------------------
最长公共子序列(LCS)?