如下:
string str = "1,2,3,4,5";
现在我要取第三个“,”的前面的所有前字符,也就是“1,2,3”
但是这个str中的数字是有可能变动的,如变成了str="10,12,14,15",大家看看,比比字符串操作技术
参与有分,写得好的加50!!!!
string str = "1,2,3,4,5";
现在我要取第三个“,”的前面的所有前字符,也就是“1,2,3”
但是这个str中的数字是有可能变动的,如变成了str="10,12,14,15",大家看看,比比字符串操作技术
参与有分,写得好的加50!!!!
string[] list=str.split(',');
string strtemp="";
strtemp=list[1]+","+list[2]+","+list[3];
char c=delimiter[0];
string [] temp=str.Split(c);
string result=temp[0]+","+temp[1]+","+temp[2];
char c=delimiter[0];
string [] temp=str.Split(c);
string result=temp[0]+","+temp[1]+","+temp[2];
就是这个
string strresult="";
strresult=strtemp[0]+","+strtemp[1]+","+strtemp[2];
String result; result = String.Join(sep, val, 1, 3);
string strresult="";
strresult=strtemp[0]+","+strtemp[1]+","+strtemp[2];
int i=4;
string [] tt=t.Split(new char[]{','},i);
string result=tt[0]+","+tt[1]+","+tt[2];
System.Windows.Forms.MessageBox.Show(result);
string reg = @"(\d+),(\d+),(\d+)";
Regex r = new Regex(reg, RegexOptions.IgnoreCase);
Match m = r.Match(text);
if(m.Success)
{
string result = m.Groups[0].ToString();
}
dim str as string
dim i as integer
dim nFlag as boolen
dim m as integer
m=0
nFlag=true
for i=0 to oldstr.length-1
if m<4 then
str=str & oldstr.char(i)
m=m+1
else
exitfor
endif
endfor
renturn str
end function
int index = text.IndexOf(",", text.IndexOf(",", text.IndexOf(",")+1)+1);
string str = text.Substring(0, index);===== str
Response.Write(sq.Substring(sq.IndexOf(",") + 1, sq.IndexOf(",", sq.IndexOf(","))))
Response.Write(sq.Substring(sq.IndexOf(",") + 2 + sq.IndexOf(",", sq.IndexOf(",")), sq.IndexOf(",", sq.IndexOf(","))))
string r=source;
int i=0;
int k=-1;
while(r!="" && i<3)
{
k = r.IndexOf(",",k+1);
if(k>=0)
{
i++;
r=(k<r.Length-1)?r.Substring(k+1):"";
}
else
{
break;
}
}
if(i==3)
res=r.Substring(0,k);
else
res="";
private void button1_Click(object sender, System.EventArgs e)
{
string str = "fhbh,ttt,mmm,4,5";
string str2="";
int x=0;
int i=0;
while(x!=3)
{
str2+=str[i];
i++; if(str[i]==',')
{
x++;
}
}
MessageBox.Show(str2);
}
但是用slit函数也是个不错的方法char [] delimiter = ",".ToCharArray();
char c=delimiter[0];
string [] temp=str.Split(c);
string result=temp[0]+","+temp[1]+","+temp[2];
{
string[] strtemp=source.Split(split);
if (strtemp.Length==1 || strtemp.Length<=num)
return source; //or return "" string strResult="";
int i=0;
for (i=0;i<num;i++)
{
strResult+=strtemp[i];
if (i<num-1) strResult+=",";
}
return strResult;
}
char[] cha = {',',','};
string[] list = str.Split(cha);
if(list.Length > 3)
str = list[0] + "," + list[1] + "," + list[2];
如 niuzhenjun(还得学呀) 同志的做法(就是有些麻烦)。
string strtemp="";
strtemp=list[0]+","+list[1]+","+list[2];
HTTP://WWW.ITZYK.NET IT资源库--->IT人的专业资源库
=================================================
http://www.itzyk.net 中国IT人的技术资源网站。网站刚刚起步,希望广大IT网友们加入我们,我们会一直把这个网站做大,做全起来。现在网站分为两大部分:http://bbs.itzyk.net -->专业讨论DoNet技术的论坛社区 http://down.itzyk.net 各种程序源码的下载站。
现在论坛区正处于发展壮大期,诚邀各位有志于IT技术方面的朋友加入我们的论坛来负责版主一职,发挥你们的能力让我们把这个论坛壮大起来吧!http://bbs.itzyk.net 欢迎您的到来!同时也欢迎各位IT朋友批评、指教!
* 函数名 : DivString
* 功能 : 字符串截取
* 内容 : 分割得到第index(从0开始)个division前的字符串
* 输入参数 : char * src,char * dest,int index,char division
* 输出参数 :
* 输入输出参数 :
* 返回值 : 成功 - OK
* 失败 - NG
* 编程者 :
* 更新日 : 2004-07-17
********************************************************************/
int DivString(char * src,char * dest,int index,char division)
{
if(index < 0){
DebugLog("分割位置不能小于0");
return NG;
}
int count = 0;
int i,j;
for (i=0,j=0;i {
if (src[i] == division) count++;
if (count == index&&src[i] != division) dest[j++] = src[i];
}
dest[j] = '\0';
return OK;
}
declare @str varchar(2000)set @str = '1sdf斯蒂芬,22,3adfasdf,4,5'declare @step intset @step = charindex(',',@str,charindex(',',@str,charindex(',',@str)+1)+1)select substring(@str,0,@step)
string result = String.Empty;
int count = str.Length;
int i = 0;
int dou = 0;
while(i<count)
{
if(str[i].Equals(','))
{
dou ++;
if(dou.Equals(3))
{
break;
}
}
result = result + str[i];
i++;
}
Response.Write(result+"<br>");
{
int currentIndex;
string returnString=null;
for(int i = 0;i<3;i++)
{
if(str.Length < 1)
return null;
currentIndex = str.IndexOf(",");
returnString += str.Remove(currentIndex,str.Length - currentIndex);
returnString += ",";
str = str.Remove(0,currentIndex + 1);
}
return returnString.Remove(returnString.Length - 1,1);
}
这个方法绝对没问题。