请问C++中怎么实现string的分割

VCRWX 2008-12-01 03:04:47
请问C++中怎么实现string的分割
比如一个string str="abcdefg$$abcd/";
我怎么能把它分割成
abcdefg
abcd
经常用到string,可是每到字符串处理是还是力不从心
谢谢
...全文
494 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
rcbblgy 2008-12-01
  • 打赏
  • 举报
回复
mark
wzg112 2008-12-01
  • 打赏
  • 举报
回复
顶实现的方法很多,简单的就用strtok()
cyj626 2008-12-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zmlovelx 的回复:]
用strtok()
[/Quote]
up
kingteng 2008-12-01
  • 打赏
  • 举报
回复
来晚了,顶
strtok()
lann64 2008-12-01
  • 打赏
  • 举报
回复
当然用迭代器也可以
lann64 2008-12-01
  • 打赏
  • 举报
回复
可以使用string::copy函数
原型:size_type string::copy(char* buf,size_type buf_size,size_type idx) const
注意返回的buf中没有'\0'

或者string::substr函数
原型:string string::substr(size_type idx,size_type len) const
nullah 2008-12-01
  • 打赏
  • 举报
回复
stl中有substr()取子串
youngsissi 2008-12-01
  • 打赏
  • 举报
回复
可以找到分隔符的位置,再按照位置取得分割的字符串
int i = (int)str.find('$');
string str1 = str.substr(0, i );
Jim_King_2000 2008-12-01
  • 打赏
  • 举报
回复
或者使用boost::Tokenizer。
http://www.boost.org/doc/libs/1_37_0/libs/tokenizer/index.html
bshyb 2008-12-01
  • 打赏
  • 举报
回复
下标访问就能分出来
taodm 2008-12-01
  • 打赏
  • 举报
回复
google “正则表达式”
ysuliu 2008-12-01
  • 打赏
  • 举报
回复
strtok()
帅得不敢出门 2008-12-01
  • 打赏
  • 举报
回复
用strtok()
帅得不敢出门 2008-12-01
  • 打赏
  • 举报
回复
用strtok()

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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