>백엔드 개발 >C++ >토큰을 사용하여 C 문자열을 효율적으로 분할하려면 어떻게 해야 합니까?

토큰을 사용하여 C 문자열을 효율적으로 분할하려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-15 02:30:02618검색

How Can I Efficiently Split C   Strings Using Tokens?

토큰을 사용하여 C 문자열을 효율적으로 분할

지정된 토큰을 기반으로 C std::string을 하위 문자열로 분할하려면 다음과 같은 몇 가지 접근 방식이 있습니다. 고려할 수 있습니다. 가장 효율적인 솔루션은 애플리케이션의 특정 요구 사항에 따라 다릅니다.

귀하의 경우 문자열은 ; 문자, C 문자열 함수 및 Boost 사용이 제한되어 있는 경우 std::getline() 함수를 활용할 수 있습니다. 이 함수를 사용하면 지정된 구분 기호에서 중지하여 스트림에서 문자열로 데이터를 읽을 수 있습니다.

이 접근 방식에 따라 다음은 std::getline()을 사용하여 문자열을 별도의 하위 문자열로 분할하고 저장하는 간단한 예입니다. 벡터로 표시:

#include <sstream>
#include <iostream>
#include <vector>

using namespace std;

int main() {
    string input = "denmark;sweden;india;us";
    istringstream stream(input);

    vector<string> split_strings;
    string token;

    // Read substrings separated by ';'
    while (getline(stream, token, ';')) {
        cout << token << endl;
        split_strings.push_back(token);
    }
}

이 코드는 std::getline()을 사용하여 문자열을 문자별로 읽는 방법을 보여줍니다. ; 구분 기호를 사용하고 개별 하위 문자열을 벡터에 저장합니다.

이 접근 방식을 활용하면 효율적으로 문자열을 토큰으로 분할하고 애플리케이션에 필요한 처리 또는 저장 작업을 수행할 수 있습니다.

위 내용은 토큰을 사용하여 C 문자열을 효율적으로 분할하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.