c++문자열 예제 코드 를 어떻게 분할 합 니까?
단일 문자 로 단 어 를 나 눌 필요 가 있다 면 getline 으로 직접 읽 으 면 됩 니 다.간단 합 니 다.
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;
int main()
{
string words;
vector<string> results;
getline(cin, words);
istringstream ss(words);
while (!ss.eof())
{
string word;
getline(ss, word, ',');
results.push_back(word);
}
for (auto item : results)
{
cout << item << " ";
}
}
여러 문자 분할 이 라면,예 를 들 면...!잠시 만 요.split 와 유사 한 함 수 를 직접 써 야 합 니 다.
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;
vector<char> is_any_of(string str)
{
vector<char> res;
for (auto s : str)
res.push_back(s);
return res;
}
void split(vector<string>& result, string str, vector<char> delimiters)
{
result.clear();
auto start = 0;
while (start < str.size())
{
//
auto itRes = str.find(delimiters[0], start);
for (int i = 1; i < delimiters.size(); ++i)
{
auto it = str.find(delimiters[i],start);
if (it < itRes)
itRes = it;
}
if (itRes == string::npos)
{
result.push_back(str.substr(start, str.size() - start));
break;
}
result.push_back(str.substr(start, itRes - start));
start = itRes;
++start;
}
}
int main()
{
string words;
vector<string> result;
getline(cin, words);
split(result, words, is_any_of(", .?!"));
for (auto item : result)
{
cout << item << ' ';
}
}
hello world 입력!Welcome to my blog,thank you!이상 은 c++문자열 예제 코드 의 모든 내용 을 어떻게 분할 하 는 지 배 웠 습 니까?본 고 는 여러분 이 C++를 사용 할 때 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker를 사용한 React 및 .NET Core 6.0 샘플 프로젝트 - 1부이 기사에서는 Entity Framework Core Code First 접근 방식을 사용하는 ASP.NET Core 6.0 WEP API의 CRUD(만들기, 읽기, 업데이트 및 삭제) 작업에 대해 설명합니다. 웹 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.