result="H36100643,Ad361122,Ad36182,Ad36382"
如果我有一串字符串,想换在高级语言中
for(int i=0;i<result.lenght;i++)
有这样函数吗
left('',charindex())字符串太麻烦

解决方案 »

  1.   

    用while循环如何切割,谢谢啊
      

  2.   

    汗,发错地方,是sql函数,我是写了个,感觉不怎么样
      

  3.   

    在程序中也可以用Split:
     string result = "H36100643,Ad361122,Ad36182,Ad36382";
     string[] a = result.Split(',');
     for (int i = 0; i < a.Length; i++)
        Response.Write(a[i]);
      

  4.   

    string result = "H36100643,Ad361122,Ad36182,Ad36382"; 
    string[] a = result.Split(new char []{ ','}); 
    foreach (string s in a) 
        Response.Write(s);
      

  5.   


    declare @result varchar(100)
    declare @sresult varchar(100)set @result='H36100643,Ad361122,Ad36182,Ad36382'
    while(charindx(',',@result) > 0)
    {
          set @sresult = SubString(@result,1,charindx(',',@result)-1);
          //@sresult是分隔下来的子串,你可以根据需要进行其他处理
           
          set @result =  SubString(@result,charindx(',',@result)+1,len(@result)-charindx(',',@result));

      

  6.   

    declare @result varchar(200);
    set @result='H36100643,Ad3610082,AASDFASDF';
    while len(@result)>0
    begin
    if(charindex(',',@result)=0)
    begin
    select @result
    set @result=stuff(@result,1,len(@result),'');
    end
    else
    begin
    select left(@result,charindex(',',@result)-1);
    set @result=stuff(@result,1,charindex(',',@result),'');
    end
    end
    declare @result varchar(100) 
    declare @sresult varchar(100) set @result='H36100643,Ad361122,Ad36182,Ad36382' 
    while(charindex(',',@result) > 0) 
    begin
          set @sresult = SubString(@result,1,charindex(',',@result)-1); 
          --@sresult是分隔下来的子串,你可以根据需要进行其他处理 
          select @sresult
          set @result =  SubString(@result,charindex(',',@result)+1,len(@result)-charindex(',',@result)); 
    end