'전체 글'에 해당되는 글 895건

  1. 2008.05.25 String Parsing

2008. 5. 25. 16:50 devel/man & example

String Parsing

1

string tmp; string str("Test string");

size_t found = str.find('i');
tmp.assign(str,0,found);


끝~
i 이후 부분은

tmp.assign(str,found,str.length()) 하면 됨미..


i를 제거 하고 싶으면 found + 1하면 되고





2
string에서 parsing 하기 ,  istringstream 에 관한 간단한 예시( 공백 파싱_ )

'string.h'에 정의된 strtok() 함수가 있습니다.

예제를 보자면

char string[] = "words separated by spaces -- and, punctuation!";
const char delimiters[] = " .,;:!-";
char *token;

token = strtok (string, delimiters); /* token => "words" */
token = strtok (NULL, delimiters); /* token => "separated" */
token = strtok (NULL, delimiters); /* token => "by" */
token = strtok (NULL, delimiters); /* token => "spaces" */
token = strtok (NULL, delimiters); /* token => "and" */
token = strtok (NULL, delimiters); /* token => "punctuation" */
token = strtok (NULL, delimiters); /* token => NULL */


위의 예제에서 delimiters[] 에 설정된 문자들이 구분자로 사용됨을 알수 있습니다.

공백문자마다 쪼개고 싶다면 delimiters[] = " " 라고 사용하시면 됩니다.








#include <iostream>
#include <sstream>
#include <string>
using namespace std;
//istringstream::str

int main () {

  int val,n;

  istringstream iss;
  string strvalues = "32 240 2 1450";

  iss.str (strvalues);

  for (n=0; n<4; n++)
  {
    iss >> val;
    cout << val+1 << endl;
  }

  return 0;
}

'devel > man & example' 카테고리의 다른 글

scanf에서 fflush(stdin) 사용 안하고 \n 파싱해서 없애기  (2) 2011.11.27
function pointer  (0) 2009.11.24
sprintf int to ascii  (0) 2009.11.08
C++ , C File OUTPUT e.g.  (0) 2008.12.02
bit shift e.g. , 2dim matrix, Defed Func  (0) 2007.05.01
Posted by 쵸코케키

블로그 이미지
chocokeki
쵸코케키

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

글 보관함