私はこのようなチャーを持っています
char buff[1024]
それから私はそのバフにたくさんのものを持っています。しかし、これらの後のすべてが必要です \r\n\r\n
したがって、charが次のようになっている場合
"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
(これは少し単純化されすぎています)。