inline char low(char c)
{
if( c >='A' && c <= 'Z' )
{
return (c + 'a' -'A');
}
else
{
return c;
}
}
//返回首地址,outlen 为字符串的
char* stringcase(const char* src,int srclen,const char* strcharset,int charsetlen)
{
char *c = new char[charsetlen];
int i = 0;
while( (c[i++] = low(*strcharset++)) != '/0' && i < charsetlen);
char ctmp;;
int j = 0;
int k = 0;
char* sart = NULL;
char *info = (char*)src;
while ( *info != '/0' && k < srclen && j < charsetlen)
{
ctmp = low(*info++);
if(ctmp == c[j])
j++;
else
{
k +=j;
k++;
j=0;
}
if(j == charsetlen)
{
sart = (char*)src + k;
break;
}
}
return sart;
}