字符串分割问题

andyboy 2003-07-09 10:17:11
有一个字符串:"abc|qwe|sdfswe|fasfas|afasdfasdf"
我希望得到"qwe|sdfswe|fasfas|afasdfasdf"
请问如何实现?
...全文
25 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wlfjck 2003-07-09
  • 打赏
  • 举报
回复
楼主给分结帖
sayo 2003-07-09
  • 打赏
  • 举报
回复
c:
strstr();

c++:
string::find();
string::find_first_of();

java:
string token
lubin59 2003-07-09
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <string.h>

int main(void)
{
char *str1 = "abc|qwe|sdfswe|fasfas|afasdfasdf", *str2 = "|", *ptr;

ptr = strstr(str1, str2);
printf("The substring is: %s\n", ptr);
return 0;
}
1cs1ak1 2003-07-09
  • 打赏
  • 举报
回复



char *str = "abc|qwe|sdfswe|fasfas|afasdfasdf";
char *p = strstr(str, "|"); //strstr()查找一个字符串在另一个字符串里出现的首地址
p++;
printf("%s", p);


1cs1ak1 2003-07-09
  • 打赏
  • 举报
回复



char *str = "abc|qwe|sdfswe|fasfas|afasdfasdf";
char *p = strstr(str, "|");
p++;
printf("%s", p);


zteliubin 2003-07-09
  • 打赏
  • 举报
回复
呵呵,不只是打印吧
//小小函数搞定
char *f1(char *s)
{
char *p = s;
char *p1 = s;

while(*p++ != '|') ;
while(*p) *p1 ++ = *p++;
*p1 = 0;
return s;
}
wlfjck 2003-07-09
  • 打赏
  • 举报
回复
char* x = "abc|qwe|sdfswe|fasfas|afasdfasdf";
x+=4;
printf("%s\n",x);
prettynacl 2003-07-09
  • 打赏
  • 举报
回复
从第一个字符开始查找分割符:'|',
找到以后,不就可以获得它后面的字符串了吗?
Alkaid 2003-07-09
  • 打赏
  • 举报
回复
memmove
foolfox008 2003-07-09
  • 打赏
  • 举报
回复
CString str;
str = str.mid(str.find("|"));

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧