Q&A

  • 토큰 구하는 함수좀 갈켜주십시요!
1, 2, 3, 4 라는 문자열이 있으면
, 라는 특정문자열을 중심으로 1 2 3 4 로 토큰 으로
분리하여 출력하고 싶습니다.
4  COMMENTS
  • Profile
    김민웅 2003.05.28 02:18
    이건 어떨까요?

    var tmp : TStringList;
         I : integer;

    tmp := TStringList.Create;
    tmp.commaText := '1,2,3,4';

    for i := 0 to tmp.Count -1 do
    begin
       showmessage(tmp.strings[i]);
    end;

    ....

    이렇게 하면 tmp변수에 값이 하나씩 들어가면

    읽을 때 루프돌려서 하나씩 읽는 방법은 어떤가요?

    실제로 해보지는 않았습니다만....

    데이타가 클 경우 실제 퍼포먼스에 얼마나 영향이 있을지는 모르겠습니다.

    이부분에 대해서 알고 계신분은 답변주세요...

    그럼 즐프...




  • Profile
    최용일 2003.05.24 23:16
    안녕하세요. 최용일입니다.

    ExtractStrings란 함수를 쓰셔도 원하시는 결과를 얻으실 수 있습니다.

    뭐 직접 파싱하는 루틴을 만드시는게 가장 좋겠지만 저 함수를 쓰셔도 됩니다.

    ^^ 항상 즐코하세요,..

  • Profile
    맑은물 2003.05.25 04:53
    ExtractStrings로 토큰 구현
    혹 토큰을 구할려는 사람에게 도움이 되고자 예제를 올립니다.

    var
    tempList: TStringList;
    i: integer;
    begin
      s := '1,2,3,4,5';        // 파싱할 문자열
      tempList := TStringList.Create();
      ExtractStrings([','], [' '], PChar(s), tempList );
      
    for i := 0 to tempList.count -1  do
      ShowMessage(tempList[i]);

    end;

  • Profile
    DelChoBo 2003.05.24 19:34
    pos함수를 사용해서 copy함수를 쓰시면 됩니다.
    질답에 pos로 검색하심 많이 나올테니 참조하시길..
    그럼..