不用 boost 库,最简单的方式, 怎么拿到 test123
test/test123
不用 boost 库,最简单的方式, 怎么拿到 test123
test/test123
|
winterfell30Aug 8, 2018
1
str.substr(str.rfind('/'))?
|
|
MeteorCatAug 8, 2018 via Android
2
........tinyhttp 在 http 解析的时候有针对字符串截断,参考下用\0 截断
|
|
agostopAug 8, 2018
3
我想问下,现在做 C++开发的,是不是基本离不开 boost ?
|
|
changnetAug 8, 2018 via Android
4
看具体需求,我很多时候都是 for 循环去找
|
|
5
@winterfell30 有这么简单的方法 ?网上没查到过这个答案
|
|
6
STL 不行么?
|
|
glacerAug 8, 2018
7
自己实现 split 函数不就行了么,循环过一遍而已
|
|
SPACELANAug 8, 2018
8
emmm,写 c++的,从来不用 boost
|
|
9
range-v3 就有现成的`ranges::view::split`.不过你确定你这不是个 X-Y 问题?我觉得你可能更需要`ranges::view::tokenize`
|
|
innoinkAug 8, 2018 via Android
10
你难道不去 cppreference.com 上看看 std::string 有哪些成员函数么?
|
|
byteliAug 8, 2018 via Android
11
string 这么蛋疼的东西还是用成熟的好,比如 qstring
|
|
tangxiaoqiang123Aug 8, 2018
13
std::string split(char* str, const char* sep) {
std::stringstream o; char* s = strtok(str, sep); while (s != NULL) { o << s; s = strtok(NULL, sep); } return o.str(); } |
|
winterfell30Aug 8, 2018
14
@wsds 如果是像你举的那个例子这么简单这样就可以了,要完全实现 split 的功能还是自己写一个函数吧
|
|
hanminghuiAug 8, 2018
15
常备 cppreference,学到了
|
|
lolcatAug 8, 2018
16
#include <string.h>
.... char *p=(strchr("test/test123",'/')+1); 这应该是最简单的方法了吧? |
|
dosmlpAug 8, 2018
17
自己写一个分割函数就完了,多大点事还发个帖子
|
|
yanaraikaAug 8, 2018
18
range-v3 吧,header-only,比起 boost 小太多,无痛引入
|
|
agagegaAug 8, 2018
19
<algorithm> 里面的 find
|
|
agostopAug 9, 2018
20
boost 是个可以让 C++变 java 的神奇之库吗?
|
|
v2qwsdcvAug 9, 2018
21
|
|
araralorenAug 9, 2018
22
~~ 推荐 strtok 的都是什么心态。。
|
|
mingl0280Aug 9, 2018
23
string s("test/test123");
int lastSlash = s.rfind('/'); if (lastSlash != s::npos) string t = s.substr(lastSlash+1); t 就是结果。 |
|
yazooxAug 9, 2018
25
也挺好奇的,现在 c++都用什么库?
裸的 c++用起来,真的老费劲了...... |
|
dychenyiAug 9, 2018
26
23 是最简单的写法。
|