sscanf 的简单用法
描述:
定义函数 int sscanf (const char *str,const char * format,........);
从一个字符串中读进与指定格式相符的数据。
有关format符号上的特殊用法
- %[^a]: 表示取到指定字符为止的字符串,a表示具体字符
- 取仅包含指定字符集的字符串,数字和小写字母
%[1-9] 表示匹配1到9中的任意数字
英国立博官方网站%[a-z] 表示匹配a到z小写字母中的任意字符
- 取到指定字符集为止的字符串
%[^A-Z] 遇到大写字母为止的字符串
- %*[]: 可用于格式中,(即%*d和%*s) 加了星号(*) 表示跳过此数据不读入。(也就是不把此数据读入到参数中)
ex1:
char str[100] = {0};
sscanf("cncr/09CNCRFF@122", "%*[^/]%s", str)
=> str = /09CNCRFF@122
ex2:
char str[100] = {0};
sscanf("cncr/09CNCRFF@122", "%*[^/]/%[^@]", str)
=> str = 09CNCRFF
ex3:
char str[100] = {0};
sscanf("cncr/09CNCRFF@122", "%*[^/]%[^@]", str);
=> str = /09CNCRFF
ex4:
char str[100] = {0};
sscanf("hello world", "%*s%s", str);
=> str = world