구분 기호를 분할 문자열의 일부로 유지하면서 여러 구분 기호로 문자열을 분할하는 좋은 방법이 있습니까? 내가 이것을 찾은 유일한 방법은 정규 표현식을 사용하는 것이고 나는 이렇게하기 위해 다른 라이브러리를 가져올 필요가 없다. (나는 Boost를 사용하지 않고 STL을 문자열로 사용하고있다.)C++ : 여러 구분 기호로 문자열을 분할하고 결과에서 구분 기호를 유지 하시겠습니까?
2
A
답변
4
, 빠르거나 느린 :
vector<string> split(string& stringToSplit)
{
vector<string> result;
size_t pos = 0, lastPos = 0;
while ((pos = stringToSplit.find_first_of(";,|", lastPos)) != string::npos)
{
result.push_back(stringToSplit.substr(lastPos, pos-lastPos+1));
lastPos = pos+1;
}
result.push_back(stringToSplit.substr(lastPos));
return result;
}
1
미리보기를 사용하여이를 수행 할 수 있습니다. 쉼표 구분 기호를 들어
(?=,)
, 그리고 (아마도 문자 클래스 : [ ... ]
)의 추가 표현으로 분할하면 분할 할 다른 구분 기호를.
그래서, this,is,an,example
가된다 : this,
is,
an,
example
: this
,is
,an
,example
당신은 얻을 그렇지 않으면 ((?<=,)
를 의미)를 lookbehind를 사용합니다
(즉, 구분 기호를 다음과 같은 용어와 함께 간다). 이 있는지 잘 모르겠어요하지만 정규 표현식없이
관련 문제
- 1. 구분 기호로 C++ 분할 문자열 및 결과에서 구분 기호를 유지
- 2. 구분 기호를 유지하면서 여러 구분 기호로 분할합니까?
- 3. 구분 기호로 구분 기호를 구분하지만 반환 배열에 구분 기호를 포함합니다.
- 4. 문자열 구분 기호로 문자열을 분할하고 따옴표 안의 구분 기호를 무시하고 빈 문자열을 생성하는 방법은 무엇입니까?
- 5. 문자열을 분할하고 구분 기호를 캡처하는 정규식?
- 6. 구분 기호로 된 단어로 문자열을 분할합니다.
- 7. 문자열을 여러 구분 기호로 단어로 분할
- 8. 아이폰에 문자열을 추가하는 방법 구분 기호로 구분 ","?
- 9. "+", "-", "*"및 "/"와 같은 기본 구분 기호를 사용하여 문자열을 구분 기호로 구분하고 구분 기호로 마침표를 사용하지 않으려면 어떻게해야합니까?
- 10. 문자열을 중괄호로 구분 기호로 분리 하시겠습니까?
- 11. '-'구분 기호로 텍스트 분할
- 12. 여러 구분 기호로 문자열을 다차원 배열로 분해합니다.
- 13. StringTokenizer 클래스 --- 구분 기호를 토큰 구분 기호로 사용
- 14. 파이썬에서 구분 기호로 문자열을 분할합니다.
- 15. 문자열을 Regex.Split으로 분할하고 모든 구분 기호를 유지하는 방법은 무엇입니까?
- 16. Cloudera Impala는 그룹 구분 기호로 구분 기호를 사용할 수 있습니까?
- 17. Visual Basic - 문자열을 구분 기호로 분리하는 방법?
- 18. Schematiq에서 여러 구분 기호로 txt.split() 사용
- 19. Java/clojure : 여러 문자 구분 기호 및 구분 기호 유지
- 20. 구분 기호로 토큰 화
- 21. 구분 기호로 문자열 분할
- 22. 구분 기호로 구분 된 문자열 목록을 반환
- 23. 파이썬 문자열에서 마지막 구분 기호로 분리 하시겠습니까?
- 24. 여러 구분 기호로 문자열 분할?
- 25. 빈 줄 구분 기호로 분할
- 26. 구분 기호로 목록 나누기
- 27. C++ getline 구분 기호를 숫자로 사용 하시겠습니까?
- 28. 문자열을 구분 기호로 분리하기위한 저장 프로 시저
- 29. 여러 구분 기호를 사용하여 문자열 분할
- 30. C에서 여러 구분 기호를 사용하여 문자열 분할
당신은 구분 기호가하거나 다음 일 이전의 기간에되고 싶어? (예 : CSV :'예,'예','예','예')는 – Jerry
다음과 같습니다. , 그것은 정말로 중요하지 않지만, 나는 단지 그들을 다시 모을 수 있어야합니다. – toastie
find_first_of() 및 substr()을 사용하여이를 달성 할 수 있지만 하나의 호출은 아닙니다 ... – Alex1985