使用strtok、sscanf和strpbrk分别解析字符串的方法
2011-03-13 22:13
691 查看
2011-03-13 wcdj
类似问题:如:char sdate[]="#1,3,5,16(1)"; 怎样才能把1,3,5,16,1分别单独取出来,“1,3,5,16,1”长度不固定。
方法1:使用strtok
输出:
1 3 5 16 1
方法2:使用sscanf和strpbrk
输出:
1 3 5 16 1
以前总结的另一篇文章:scanf中%[*]type的巧用场景
参考:
strtok
strpbrk
类似问题:如:char sdate[]="#1,3,5,16(1)"; 怎样才能把1,3,5,16,1分别单独取出来,“1,3,5,16,1”长度不固定。
方法1:使用strtok
#include<iostream> #include <cstring> using namespace std; int main() { char sdate[]="#1,3,5,16(1)"; char * pch = strtok(sdate, "#,()"); while (pch) { printf("%s ",pch); pch = strtok(NULL, "#,()"); } system("pause"); return 0; }
输出:
1 3 5 16 1
方法2:使用sscanf和strpbrk
#include<iostream> #include <cstring> using namespace std; int main() { char str[] = "#1,3,5,16(1)"; char key[] = "#,()"; int d = 0, r = 0; char * pch; pch = strpbrk (str, key); while (pch != NULL) { //printf ("%c " , *pch); while (*pch) { r = sscanf(pch, "%d", &d); if (r == 1) { printf("%d ", d); break; } else if (r == 0) sscanf(pch++, "%*c"); } if (pch == NULL) break; pch = strpbrk (pch+1,key); } system("pause"); return 0; }
输出:
1 3 5 16 1
以前总结的另一篇文章:scanf中%[*]type的巧用场景
参考:
strtok
strpbrk
相关文章推荐
- 【C/C++】之 strtok,strstr,sscanf 解析字符串
- C#第2次试验(1).创建一个抽象类A,该类中包含一个求两个数之和抽象方法。创建一个子类B,在B中重写求和方法,且使用方法重载使得方法可以分别计算整数、双精度、字符串。
- php使用parse_str实现查询字符串解析到变量中的方法
- hdu1106 字符串水题strtok()&&strchr()&&sscanf()+atoi()使用
- C#字符串数组排序 C#排序算法大全 C#字符串比较方法 一个.NET通用JSON解析/构建类的实现(c#) C#处理Json文件 asp.net使用Jquery+iframe传值问题
- 2.创建一个抽象类A,该类中包含一个求两个数之和抽象方法。创建一个子类B,在B中重写求和方法,且使用方法重载使得方法可以分别计算整数、双精度、字符串
- 在线聊天项目1.4版 使用Gson方法解析Json字符串以便重构request和response的各种请求和响应 解决聊天不畅问题 Gson包下载地址
- 解决IE中无法使用jquery.find方法解析xml字符串的方法
- hdu1106 字符串水题strtok()&&strchr()&&sscanf()+atoi()使用
- C#小练习(使用方法重载使得方法可以分别计算整数、双精度、字符串)
- OC中字符串和数值的方法与使用实例解析
- php str_getcsv把字符串解析为数组的使用方法
- C语言切割多层字符串(strtok_r strtok使用方法)
- js解析字符串为json对象使用eval(str)方法
- C#--第2周实验--任务13--创建一个抽象类A,创建一个子类B,在B中重写求和方法,且使用方法重载使得方法可以分别计算整数、双精度、字符串。
- 在线聊天项目1.4版 使用Gson方法解析Json字符串以便重构request和response的各种请求和响应 解决聊天不畅问题 Gson包下载地址
- 使用eval()解析JSON格式字符串应注意的问题
- C++中string的用法 string字符串的使用方法
- java解析任意层数json字符串的方法
- Json_decode 解析json字符串为NULL的解决方法(必看)