🔓알고리즘/문자열
split 함수 구현 - C++
개발환경 >> vscode
언어 >> C++17
운영체제 >> Windows10
안녕하세요
이번에는 split 함수뿐만 아니라
split관련 추가 기능에 대한 헤더 파일을 만들었습니다
그럼 시작하겠습니다...!
[[[ 소스코드 ]]]
#include "split.hpp" //다운로드는 밑에링크 올려놓았습니다
#include <iostream>
int main(){
string str="1|2|3|4"; //string
split::splitC spl; //splitC클래스
spl = split::split(str,"|"); //split함수
for(int i=0;i<spl.size();i++){ //안에서 잘려진 원소의 수만큼 반복
cout << spl[i] << " "; //값출력
if(i!=spl.size()-1) cout << "+ "; //값을 명시하기위해 + 로 나눠서보기
}
int in = split::SplitToInt(spl); //SplitC -> int 값변환함수
cout << "\n\nint :: " << in;
}
이렇게 하면
그러면 split.hpp 헤더 파일은 하단에 github에 첨부해놓겠습니다~!
사용법을 알려드릴게요!
{{{ 이름 공간 }}}
using namespace split;
{{{ 기본 문자열 객체로 string사용 }}}
string str;
{{{ splitC클래스 }}}
split::splitC spl;
spl[0];
spl.size();
spl.capacity();
spl.add(); //사용안해도됨
splitC클래스는 [] 오버 로딩, 원소 추가 함수 add, 크기 리턴 함수 size(), 최대 크기 함수 capacity() 가있습니다
{{{ split함수 }}}
spl = split::split(str,"|");
값을 리턴받을 객체 = split::split(string클래스, string을 나눌기준);
splitC = split::split(string,const char*);
{{{ stoc함수 }}}
stoc(string,char *); //통상적으로 사용안해도됨
string -> char* 값대입합수
{{{ SplitToInt함수 }}}
int SplitToInt(string);
exam)
splitC spl; (2,3,5)
int integer = split::SplitToInt(spl[0]);
[integer :: 2]
////////////////////////////////////////////
int SplitToInt(splitC);
exam)
splitC spl; (6,5,3)
int integer = split::SplitToInt(spl);
[integer :: 14]
그리고 저가 지금까지 splitC함수 내의 객체를 숫자만 사용해서 그렇지만,
문자도 정상적으로 됩니다 단, 문자를 int관련 함수에 사용하면 0으로 반환됩니다.
마지막으로 예시 코드 하나 보여드리고 저는 빠지도록 하겠습니다...
감사합니다....!!!
[[[ 예시 ]]]
#include "split.hpp"
#include <iostream>
int main(){
string str="Thanks-for-visiting-my-Blog-~!";
split::splitC spl;
spl = split::split(str,"-");
for(int i=0;i<spl.size();i++){
cout << spl[i] << " ";
if(i!=spl.size()-1) cout << "+ ";
}
}
[[[ 다운로드 ]]]
github.com/DRAGONPROCESS/String-Split.git
'🔓알고리즘 > 문자열' 카테고리의 다른 글
C++ | 문자열 안에서 특정 문자열 찾기 (0) | 2021.10.17 |
---|---|
파일암호화 Cryptography C++ (2) | 2020.10.10 |
댓글