我有一个这样的字符
char buff[1024]
然后我在那个buff里有很多东西。但是我想要这些\ r \ n \ r \ n之后的所有内容
所以,如果字符看起来像这样
"asdfEianfd\r\n\r\ndsakfmagnrgsginagres"
我想收到输出
dsakfmagnrgsginagres
最佳答案
嗯,这实际上不是C ++方式,因为您已经将它放在char
数组中,但是无论如何,让我们使用C风格:
const char* phrase = "\r\n\r\n";
char *remain = strstr(buff, phrase);
if( remain != NULL ) remain += strlen(phrase);
现在,只要找到换行模式,
remain
现在将指向您要查找的文本的开头。如果找不到该模式,则remain
将为NULL。这只会找到模式的第一次出现(
"\r\n\r\n"
),并返回其后的所有内容。如果您实际上想拔出线,则必须手动进行正向搜索并标记化标记,或者查看类似strtok
的东西(有点过分简化)。