数据库中有如下记录
2005 龙大公司  副总经济师兼市场部主任
1.怎么取该记录中的2005 和 副总经济经兼市场部主任 (不能用截取的方法,有多条记录)
2.怎么只取副总经济师

解决方案 »

  1.   

    即  年份,公司名称,职务   
     以"2005 龙大公司  副总经济师兼市场部主任 "为例,
    问: 中间是否有空格等间割字符?
    如有就用 string.split方法,没有的话俺也不晓得怎么弄,哈哈
      

  2.   

    还有一点就是你的这条记录"2005 龙大公司  副总经济师兼市场部主任"
    是一条记录的三个字段,还是就是在一个字段里面..如果是三个字段,那很简单,直接读库,分别取各个字段即可..
    如果不是三个字段,而是一条记录中一个字段下的内容..再假如中间是以空格分开的话,可以直接用string str="2005 龙大公司  副总经济师兼市场部主任";
    string[] s=str.Split(new char[]{' '})即可
      

  3.   

    写一个SQL函数处理该字段,比如GetSubStr(value varchar(x), index int), index表示取字段中的第几个值,按空格分,我想GetSubStr的函数实现应该很简单吧
      

  4.   

    楼上说得对,用sql 的内置函数
      

  5.   

    liujia_0421(SnowLover) 的办法应该解决了lz的问题。
      

  6.   

    Regex rx = new Regex(@"\s+");
                string str = "2005至今 龙大公司  副总经济师兼市场部主任";
                string[] result = rx.Split(str);            result[0] = result[0].Substring(0, 4);
                //如果有兼职的话,且以"兼"分隔
                if (result[2].IndexOf("兼") >= 0)
                {
                    result[2] = result[2].Substring(0, result[2].IndexOf("兼"));
                }            for (int i = 0; i < 3; i++)
                {
                    Console.WriteLine(result[i]);
                }
      

  7.   

    改成这样更好: string[] result = rx.Split(str.Trim ());