我正在使用scanf,尝试在逗号之前读取表达式。
sscanf(some_string,
"%s %[ .0-9a-zA-Z!@:/|-_^,],read_other_stuff:%s....]",
&string1, &string2... etc);
Sscanf正确读取所有内容,直到%[。0-9a-zA-Z!@:/ | -_ ^,]。正如预期的那样,这段格式会占用所有其余字符串,而不会停留在逗号处。
如何以逗号结束,并将其他内容读取(包括空格,逗号以外的标点符号等)
答案 0 :(得分:0)
要将字符串解析为,
,代码可以使用strchr(some_string, ',')
要使用sscanf()
,请使用2个电话
int n = 0;
sscanf(some_string, "%*[^,]%n", &n);
// some_string[n] is either \0 or ,
char string1[100];
string1[0] = '\0';
sscanf(&some_string[n], ",%99s", string1);
puts(string1);
推荐#1