Q&A

  • 리치에디트에서 특정 문자를 가져오려면.....
안녕하세요



리치에디트에서 특정 문자를 찾았습니다.



그런데 제가 가져오고 싶은 정보는 특정문자 뒤에 내용인데....



ex) richedit1의 내용

aaaa-12485

bbb-324234

ccc-a1234

ddd-bbbb

ccc-d733

adf-adf

asdf-435345

ccc-1234567



예로 설명하면 여기서 ccc를 찾구나면 a1234, d733,1234567이란 내용을 가져 오고 싶은데 어떻게 해야 하는지 가르켜 주십시요.



그럼 좋은 하루되십시요...^^*





procedure TForm1.Button1Click(Sender: TObject);

var

FoundAt : Integer;

stText : String;

begin

stText := 'b';

with RichEdit2 do begin

FoundAt:= RichEdit2.FindText(stText, 0, Length(Text), [stMatchCase]);

if FoundAt <> -1 then begin

SetFocus;

SelStart := FoundAt;

SelLength := Length(stText);

end;

end;

end;



1  COMMENTS
  • Profile
    click 2001.09.18 06:21
    초보는힘들어 wrote:

    > 안녕하세요

    >

    > 리치에디트에서 특정 문자를 찾았습니다.

    >

    > 그런데 제가 가져오고 싶은 정보는 특정문자 뒤에 내용인데....

    >

    > ex) richedit1의 내용

    > aaaa-12485

    > bbb-324234

    > ccc-a1234

    > ddd-bbbb

    > ccc-d733

    > adf-adf

    > asdf-435345

    > ccc-1234567

    >

    > 예로 설명하면 여기서 ccc를 찾구나면 a1234, d733,1234567이란 내용을 가져 오고 싶은데 어떻게 해야 하는지 가르켜 주십시요.

    >

    > 그럼 좋은 하루되십시요...^^*

    >

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > var

    > FoundAt : Integer;

    > stText : String;

    > begin

    > stText := 'b';

    > with RichEdit2 do begin

    > FoundAt:= RichEdit2.FindText(stText, 0, Length(Text), [stMatchCase]);

    > if FoundAt <> -1 then begin

    > SetFocus;

    > SelStart := FoundAt;

    > SelLength := Length(stText);

    > end;

    > end;

    > end;

    >



    procedure TForm1.Button2Click(Sender: TObject);

    var i : integer ;

    s, k, sch_str : string ;

    begin

    RichEdit2.Clear ;

    for i := 0 to richedit1.Lines.Count - 1 do

    begin

    s := Richedit1.lines[i] ;

    If Pos(Edit1.Text, s) > 0 then

    begin

    k := copy(s, pos('-', s) + 1, length(s) - pos('-', s)) ;

    Richedit2.Lines.add(k) ;

    end;

    end;

    end;