ホームページ  >  記事  >  バックエンド開発  >  C で複数の区切り文字を使用して文字列を分割するにはどうすればよいですか?

C で複数の区切り文字を使用して文字列を分割するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-21 18:03:10316ブラウズ

How to Split Strings with Multiple Delimiters in C  ?

複数の区切り文字を使用した文字列の分割

テキストを操作する場合、多くの場合、文字列を個々の単語またはトークンに分割する必要があります。単一の区切り文字では不十分な場合は、複数の区切り文字を利用してこのタスクを達成する方法を次に示します。

区切り文字の 1 つが改行文字であると仮定して、次のコード スニペットは、文字列ストリームからテキストを読み取る方法を示しています。それを行に分割し、指定された区切り文字に基づいて各行をさらに細分化します。

std::stringstream stringStream(inputString);
std::string line;
while(std::getline(stringStream, line)) 
{
    std::size_t prev = 0, pos;
    while ((pos = line.find_first_of(" ';", prev)) != std::string::npos)
    {
        if (pos > prev)
            wordVector.push_back(line.substr(prev, pos-prev));
        prev = pos+1;
    }
    if (prev < line.length())
        wordVector.push_back(line.substr(prev, std::string::npos));
}

このコードでは、行文字列が読み取られ、その後処理されました。 find_first_of 関数は、指定された区切り文字列 (この場合は「';」) 内で最初に出現する文字を検索するために使用されます。単語は区切り文字の間で抽出され、行の先頭または末尾の単語もキャプチャされます。その後、トークンが wordVector.

に追加されます。

以上がC で複数の区切り文字を使用して文字列を分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。