大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
根据单个分隔字符用split截取
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了武昌免费建站欢迎大家使用!
string st="GT123_1";
string[] sArray=st.split("_");
即可得到sArray[0]="GT123",sArray[1]="1";
2.利用多个字符来分隔字符串
tring str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split(new char[2] { 'j', '_' });
foreach(string e in sArray)
{
Console.WriteLine(e);
}
得到sArray[0]="GTAZB",sArray[1]="Jiang",sArray[2]="Ben",sArray[3]="123";
3根据字符串或字符串组来截取字符串
string str = "GTAZB_JiangjBen_123";
string[] sArray = str.Split( new string[]{"Ji","jB"}, StringSplitOptions.RemoveEmptyEntries);
foreach(string e in sArray)
{
Console.WriteLine(e);
}
得到sArray[0]="GTAZB_",sArray[1]="ang",sArray[2]="en_123";
4提取字符串中的第i个字符开始的长度为j的字符串;
string str = "GTAZB_JiangjBen_123";
int start=3,length=8;
Console.WriteLine(str.Substring(start-1, length));
//vc++ 6.0下运行通过
#include stdio.h
#include stdlib.h
char *subs(char *s,int n,int m)
{
char *p;
int i=0;
p=s;
while(*p++ != '\0') //NULL是void *型
{
i++;
}
if(n0||m0||mn||mi)
{
printf("Substring invidal !\n");
exit (0);
}
p=s+n;
*(p+m+1)='\0';//必须'\0',printf函数读到'\0'停止;
return(p);
}
int main(void)
{
char s1[]="The c programing language!";// char *常量
system("cls");
printf("%s\n",subs(s1,5,16));
}
在纯C中好像没有,但是C++中很容易,你可以去查一下,网上有很多纯C实现的子串求法
string的substr函数是C++的,是STL库中的,而非纯C的实现,纯C的标准库中没有直接获得子串的方法,自己写很容易